1/* Generated by mkjambase from Jambase */ 2const char *jambase[] = { 3/* Jambase */ 4"JAMBASEDATE = 2002.05.09 ;\n", 5"if $(NT)\n", 6"{\n", 7"MV ?= move /y ;\n", 8"CP ?= copy ;\n", 9"RM ?= del /f/q ;\n", 10"RMDIR ?= rmdir /s/q ;\n", 11"SLASH ?= \\\\ ;\n", 12"SUFLIB ?= .lib ;\n", 13"SUFOBJ ?= .obj ;\n", 14"SUFEXE ?= .exe ;\n", 15"if $(BCCROOT)\n", 16"{\n", 17"AR ?= tlib /C /P64 ;\n", 18"CC ?= bcc32 ;\n", 19"CCFLAGS ?= -v -w- -q -DWIN -tWR -tWM -tWC ;\n", 20"C++ ?= $(CC) ;\n", 21"C++FLAGS ?= $(CCFLAGS) -P ;\n", 22"LINK ?= $(CC) ;\n", 23"LINKFLAGS ?= $(CCFLAGS) ;\n", 24"STDLIBPATH ?= $(BCCROOT)\\\\lib ;\n", 25"STDHDRS ?= $(BCCROOT)\\\\include ;\n", 26"NOARSCAN ?= true ;\n", 27"}\n", 28"else if $(MSVC)\n", 29"{\n", 30"AR ?= lib /nologo ;\n", 31"CC ?= cl /nologo ;\n", 32"CCFLAGS ?= /D \\\"WIN\\\" ;\n", 33"C++ ?= $(CC) ;\n", 34"C++FLAGS ?= $(CCFLAGS) ;\n", 35"LINK ?= $(CC) ;\n", 36"LINKFLAGS ?= $(CCFLAGS) ;\n", 37"LINKLIBS ?= \n", 38"$(MSVC)\\\\lib\\\\mlibce.lib\n", 39"$(MSVC)\\\\lib\\\\oldnames.lib\n", 40";\n", 41"LINKLIBS ?= ;\n", 42"NOARSCAN ?= true ;\n", 43"OPTIM ?= ;\n", 44"STDHDRS ?= $(MSVC)\\\\include ;\n", 45"UNDEFFLAG ?= \"/u _\" ;\n", 46"}\n", 47"else if $(MSVCNT) || $(MSVCDIR)\n", 48"{\n", 49"MSVCNT ?= $(MSVCDIR) ; \n", 50"local I ; if $(OSPLAT) = IA64 { I = ia64\\\\ ; } else { I = \"\" ; }\n", 51"AR ?= lib ;\n", 52"AS ?= masm386 ;\n", 53"CC ?= cl /nologo ;\n", 54"CCFLAGS ?= \"\" ;\n", 55"C++ ?= $(CC) ;\n", 56"C++FLAGS ?= $(CCFLAGS) ;\n", 57"LINK ?= link /nologo ;\n", 58"LINKFLAGS ?= \"\" ;\n", 59"LINKLIBS ?= \n", 60"$(MSVCNT)\\\\lib\\\\$(I)libc.lib\n", 61"$(MSVCNT)\\\\lib\\\\$(I)oldnames.lib\n", 62"$(MSVCNT)\\\\lib\\\\$(I)kernel32.lib ;\n", 63"OPTIM ?= \"\" ;\n", 64"STDHDRS ?= $(MSVCNT)\\\\include ;\n", 65"UNDEFFLAG ?= \"/u _\" ;\n", 66"}\n", 67"else\n", 68"{\n", 69"EXIT On NT, set BCCROOT, MSVCDIR, MSVCNT, or MSVC to the root\n", 70"of the Borland or Microsoft directories. ;\n", 71"}\n", 72"}\n", 73"else if $(MINGW)\n", 74"{\n", 75"Echo \"MingW32\" ;\n", 76"CC ?= gcc ;\n", 77"C++ ?= g++ ;\n", 78"CCFLAGS += -DMINGW ;\n", 79"RANLIB ?= \"ranlib\" ;\n", 80"SUFEXE ?= .exe ;\n", 81"}\n", 82"else if $(OS2)\n", 83"{\n", 84"WATCOM ?= $(watcom) ;\n", 85"if ! $(WATCOM)\n", 86"{\n", 87"Exit On OS2, set WATCOM to the root of the Watcom directory. ;\n", 88"}\n", 89"AR ?= wlib ;\n", 90"BINDIR ?= \\\\os2\\\\apps ;\n", 91"CC ?= wcc386 ;\n", 92"CCFLAGS ?= /zq /DOS2 /I$(WATCOM)\\\\h ; # zq=quiet\n", 93"C++ ?= wpp386 ;\n", 94"C++FLAGS ?= $(CCFLAGS) ;\n", 95"CP ?= copy ;\n", 96"DOT ?= . ;\n", 97"DOTDOT ?= .. ;\n", 98"LINK ?= wcl386 ;\n", 99"LINKFLAGS ?= /zq ; # zq=quiet\n", 100"LINKLIBS ?= ;\n", 101"MV ?= move ;\n", 102"NOARSCAN ?= true ;\n", 103"OPTIM ?= ;\n", 104"RM ?= del /f ;\n", 105"SLASH ?= \\\\ ;\n", 106"STDHDRS ?= $(WATCOM)\\\\h ;\n", 107"SUFEXE ?= .exe ;\n", 108"SUFLIB ?= .lib ;\n", 109"SUFOBJ ?= .obj ;\n", 110"UNDEFFLAG ?= \"/u _\" ;\n", 111"}\n", 112"else if $(VMS)\n", 113"{\n", 114"C++ ?= cxx ;\n", 115"C++FLAGS ?= ;\n", 116"CC ?= cc ;\n", 117"CCFLAGS ?= ;\n", 118"CHMOD ?= set file/prot= ;\n", 119"CP ?= copy/replace ;\n", 120"CRELIB ?= true ;\n", 121"DOT ?= [] ;\n", 122"DOTDOT ?= [-] ;\n", 123"EXEMODE ?= (w:e) ;\n", 124"FILEMODE ?= (w:r) ;\n", 125"HDRS ?= ;\n", 126"LINK ?= link ;\n", 127"LINKFLAGS ?= \"\" ;\n", 128"LINKLIBS ?= ;\n", 129"MKDIR ?= create/dir ;\n", 130"MV ?= rename ;\n", 131"OPTIM ?= \"\" ;\n", 132"RM ?= delete ;\n", 133"RUNVMS ?= mcr ;\n", 134"SHELLMODE ?= (w:er) ;\n", 135"SLASH ?= . ;\n", 136"STDHDRS ?= decc$library_include ;\n", 137"SUFEXE ?= .exe ;\n", 138"SUFLIB ?= .olb ;\n", 139"SUFOBJ ?= .obj ;\n", 140"switch $(OS) \n", 141"{\n", 142"case OPENVMS : CCFLAGS ?= /stand=vaxc ;\n", 143"case VMS : LINKLIBS ?= sys$library:vaxcrtl.olb/lib ;\n", 144"}\n", 145"}\n", 146"else if $(MAC)\n", 147"{\n", 148"local OPT ;\n", 149"CW ?= \"{CW}\" ;\n", 150"MACHDRS ?=\n", 151"\"$(UMACHDRS):Universal:Interfaces:CIncludes\"\n", 152"\"$(CW):MSL:MSL_C:MSL_Common:Include\"\n", 153"\"$(CW):MSL:MSL_C:MSL_MacOS:Include\" ;\n", 154"MACLIBS ?=\n", 155"\"$(CW):MacOS Support:Universal:Libraries:StubLibraries:Interfacelib\"\n", 156"\"$(CW):MacOS Support:Universal:Libraries:StubLibraries:Mathlib\" ;\n", 157"MPWLIBS ?= \n", 158"\"$(CW):MacOS Support:Libraries:Runtime:Libs:MSL_MPWCRuntime_PPC.lib\"\n", 159"\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL_C_PPC_MPW.Lib\" ;\n", 160"MPWNLLIBS ?= \n", 161"\"$(CW):MacOS Support:Libraries:Runtime:Libs:MSL_MPWCRuntime_PPC.lib\"\n", 162"\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL_C_PPC_MPW(NL).Lib\" ;\n", 163"SIOUXHDRS ?= ;\n", 164"SIOUXLIBS ?= \n", 165"\"$(CW):MacOS Support:Libraries:Runtime:Libs:MSL_Runtime_PPC.lib\"\n", 166"\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL_SIOUX_PPC.Lib\" \n", 167"\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL_C_PPC.Lib\" ;\n", 168"C++ ?= mwcppc ;\n", 169"C++FLAGS ?= -w off ;\n", 170"CC ?= mwcppc ;\n", 171"CCFLAGS ?= -w off ;\n", 172"CP ?= duplicate -y ;\n", 173"DOT ?= \":\" ;\n", 174"DOTDOT ?= \"::\" ;\n", 175"HDRS ?= $(MACHDRS) $(MPWHDRS) ;\n", 176"LINK ?= mwlinkppc ;\n", 177"LINKFLAGS ?= -mpwtool -warn ; \n", 178"LINKLIBS ?= $(MACLIBS) $(MPWLIBS) ; \n", 179"MKDIR ?= newfolder ;\n", 180"MV ?= rename -y ;\n", 181"NOARSCAN ?= true ;\n", 182"OPTIM ?= ;\n", 183"RM ?= delete -y ;\n", 184"SLASH ?= \":\" ;\n", 185"STDHDRS ?= ; \n", 186"SUFLIB ?= .lib ;\n", 187"SUFOBJ ?= .o ;\n", 188"}\n", 189"else if $(OS) = BEOS && $(OSPLAT) = PPC\n", 190"{\n", 191"AR ?= mwld -xml -o ;\n", 192"BINDIR ?= /boot/home/config/bin ;\n", 193"CC ?= mwcc ;\n", 194"CCFLAGS ?= -nosyspath ;\n", 195"C++ ?= $(CC) ;\n", 196"C++FLAGS ?= -nosyspath ;\n", 197"CHMOD ?= chmod ;\n", 198"CHGRP ?= chgrp ;\n", 199"CHOWN ?= chown ;\n", 200"FORTRAN ?= \"\" ;\n", 201"LEX ?= flex ;\n", 202"LIBDIR ?= /boot/home/config/lib ;\n", 203"LINK ?= mwld ;\n", 204"LINKFLAGS ?= \"\" ;\n", 205"MANDIR ?= /boot/home/config/man ;\n", 206"NOARSCAN ?= true ;\n", 207"RANLIB ?= ranlib ;\n", 208"STDHDRS ?= /boot/develop/headers/posix ;\n", 209"YACC ?= bison -y ;\n", 210"YACCGEN ?= .c ;\n", 211"YACCFILES ?= y.tab ;\n", 212"YACCFLAGS ?= -d ;\n", 213"}\n", 214"else if $(OS) = BEOS\n", 215"{\n", 216"BINDIR ?= /boot/home/config/bin ;\n", 217"CC ?= gcc ;\n", 218"C++ ?= $(CC) ;\n", 219"CHMOD ?= chmod ;\n", 220"CHGRP ?= chgrp ;\n", 221"CHOWN ?= chown ;\n", 222"FORTRAN ?= \"\" ;\n", 223"LEX ?= flex ;\n", 224"LIBDIR ?= /boot/home/config/lib ;\n", 225"LINK ?= gcc ;\n", 226"MANDIR ?= /boot/home/config/man ;\n", 227"NOARSCAN ?= true ;\n", 228"RANLIB ?= ranlib ;\n", 229"STDHDRS ?= /boot/develop/headers/posix ;\n", 230"YACC ?= bison -y ;\n", 231"YACCGEN ?= .c ;\n", 232"YACCFILES ?= y.tab ;\n", 233"YACCFLAGS ?= -d ;\n", 234"}\n", 235"else if $(OS) = HAIKU\n", 236"{\n", 237"BINDIR ?= /boot/common/bin ;\n", 238"CC ?= gcc ;\n", 239"C++ ?= $(CC) ;\n", 240"CHMOD ?= chmod ;\n", 241"CHGRP ?= chgrp ;\n", 242"CHOWN ?= chown ;\n", 243"FORTRAN ?= \"\" ;\n", 244"LEX ?= flex ;\n", 245"LIBDIR ?= /boot/common/lib ;\n", 246"LINK ?= gcc ;\n", 247"MANDIR ?= /boot/common/man ;\n", 248"NOARSCAN ?= true ;\n", 249"RANLIB ?= ranlib ;\n", 250"STDHDRS ?= /boot/develop/headers/posix ;\n", 251"YACC ?= bison -y ;\n", 252"YACCGEN ?= .c ;\n", 253"YACCFILES ?= y.tab ;\n", 254"YACCFLAGS ?= -d ;\n", 255"}\n", 256"else if $(UNIX)\n", 257"{\n", 258"switch $(OS)\n", 259"{\n", 260"case AIX :\n", 261"LINKLIBS ?= -lbsd ;\n", 262"case AMIGA :\n", 263"CC ?= gcc ;\n", 264"YACC ?= bison -y ;\n", 265"case CYGWIN : \n", 266"CC ?= gcc ;\n", 267"CCFLAGS += -D__cygwin__ ;\n", 268"LEX ?= flex ;\n", 269"JAMSHELL ?= sh -c ;\n", 270"RANLIB ?= \"\" ;\n", 271"SUFEXE ?= .exe ;\n", 272"YACC ?= bison -y ;\n", 273"case DGUX :\n", 274"RANLIB ?= \"\" ;\n", 275"RELOCATE ?= true ;\n", 276"case HPUX :\n", 277"RANLIB ?= \"\" ;\n", 278"case INTERIX :\n", 279"CC ?= gcc ;\n", 280"JAMSHELL ?= sh -c ;\n", 281"RANLIB ?= \"\" ;\n", 282"case IRIX :\n", 283"RANLIB ?= \"\" ;\n", 284"case MPEIX :\n", 285"CC ?= gcc ;\n", 286"C++ ?= gcc ;\n", 287"CCFLAGS += -D_POSIX_SOURCE ;\n", 288"HDRS += /usr/include ;\n", 289"RANLIB ?= \"\" ; \n", 290"NOARSCAN ?= true ;\n", 291"NOARUPDATE ?= true ;\n", 292"case MVS :\n", 293"RANLIB ?= \"\" ; \n", 294"case NEXT :\n", 295"AR ?= libtool -o ;\n", 296"RANLIB ?= \"\" ;\n", 297"case MACOSX :\n", 298"C++ ?= c++ ;\n", 299"MANDIR ?= /usr/local/share/man ;\n", 300"case NCR :\n", 301"RANLIB ?= \"\" ;\n", 302"case PTX :\n", 303"RANLIB ?= \"\" ;\n", 304"case QNX :\n", 305"AR ?= wlib ;\n", 306"CC ?= cc ;\n", 307"CCFLAGS ?= -Q ; # quiet\n", 308"C++ ?= $(CC) ;\n", 309"C++FLAGS ?= -Q ; # quiet\n", 310"LINK ?= $(CC) ;\n", 311"LINKFLAGS ?= -Q ; # quiet\n", 312"NOARSCAN ?= true ;\n", 313"RANLIB ?= \"\" ;\n", 314"case SCO :\n", 315"RANLIB ?= \"\" ;\n", 316"RELOCATE ?= true ;\n", 317"case SINIX :\n", 318"RANLIB ?= \"\" ;\n", 319"case SOLARIS :\n", 320"RANLIB ?= \"\" ;\n", 321"AR ?= \"/usr/ccs/bin/ar ru\" ;\n", 322"case UNICOS :\n", 323"NOARSCAN ?= true ;\n", 324"OPTIM ?= -O0 ;\n", 325"case UNIXWARE :\n", 326"RANLIB ?= \"\" ;\n", 327"RELOCATE ?= true ;\n", 328"}\n", 329"CCFLAGS ?= ;\n", 330"C++FLAGS ?= $(CCFLAGS) ;\n", 331"CHMOD ?= chmod ;\n", 332"CHGRP ?= chgrp ;\n", 333"CHOWN ?= chown ;\n", 334"LEX ?= lex ;\n", 335"LINKFLAGS ?= $(CCFLAGS) ;\n", 336"LINKLIBS ?= ;\n", 337"OPTIM ?= -O ;\n", 338"RANLIB ?= ranlib ;\n", 339"YACC ?= yacc ;\n", 340"YACCGEN ?= .c ;\n", 341"YACCFILES ?= y.tab ;\n", 342"YACCFLAGS ?= -d ;\n", 343"}\n", 344"AR ?= ar ru ;\n", 345"AS ?= as ;\n", 346"ASFLAGS ?= ;\n", 347"AWK ?= awk ;\n", 348"BINDIR ?= /usr/local/bin ;\n", 349"C++ ?= cc ;\n", 350"C++FLAGS ?= ;\n", 351"CC ?= cc ;\n", 352"CCFLAGS ?= ;\n", 353"CP ?= cp -f ;\n", 354"CRELIB ?= ;\n", 355"DOT ?= . ;\n", 356"DOTDOT ?= .. ;\n", 357"EXEMODE ?= 711 ;\n", 358"FILEMODE ?= 644 ;\n", 359"FORTRAN ?= f77 ;\n", 360"FORTRANFLAGS ?= ;\n", 361"HDRS ?= ;\n", 362"INSTALLGRIST ?= installed ;\n", 363"JAMFILE ?= Jamfile ;\n", 364"JAMRULES ?= Jamrules ;\n", 365"LEX ?= ;\n", 366"LIBDIR ?= /usr/local/lib ;\n", 367"LINK ?= $(CC) ;\n", 368"LINKFLAGS ?= ;\n", 369"LINKLIBS ?= ;\n", 370"LN ?= ln ;\n", 371"MANDIR ?= /usr/local/man ;\n", 372"MKDIR ?= mkdir ;\n", 373"MV ?= mv -f ;\n", 374"OPTIM ?= ;\n", 375"RCP ?= rcp ;\n", 376"RM ?= rm -f ;\n", 377"RMDIR ?= $(RM) ;\n", 378"RSH ?= rsh ;\n", 379"SED ?= sed ;\n", 380"SHELLHEADER ?= \"#!/bin/sh\" ;\n", 381"SHELLMODE ?= 755 ;\n", 382"SLASH ?= / ;\n", 383"STDHDRS ?= /usr/include ;\n", 384"SUBDIRRULES ?= ;\n", 385"SUBDIRRESET ?= ASFLAGS HDRS C++FLAGS CCFLAGS ;\n", 386"SUFEXE ?= \"\" ;\n", 387"SUFLIB ?= .a ;\n", 388"SUFOBJ ?= .o ;\n", 389"UNDEFFLAG ?= \"-u _\" ;\n", 390"YACC ?= ;\n", 391"YACCGEN ?= ;\n", 392"YACCFILES ?= ;\n", 393"YACCFLAGS ?= ;\n", 394"HDRPATTERN = \n", 395"\"^[ ]*#[ ]*include[ ]*[<\\\"]([^\\\">]*)[\\\">].*$\" ;\n", 396"OSFULL = $(OS)$(OSVER)$(OSPLAT) $(OS)$(OSPLAT) $(OS)$(OSVER) $(OS) ;\n", 397"Depends all : shell files lib exe obj ;\n", 398"Depends all shell files lib exe obj : first ;\n", 399"NotFile all first shell files lib exe obj dirs clean uninstall ;\n", 400"Always clean uninstall ;\n", 401"rule As\n", 402"{\n", 403"Depends $(<) : $(>) ;\n", 404"ASFLAGS on $(<) += $(ASFLAGS) $(SUBDIRASFLAGS) ;\n", 405"ASHDRS on $(<) = [ FIncludes $(SEARCH_SOURCE) $(SUBDIRHDRS) $(HDRS) ] ;\n", 406"}\n", 407"rule Bulk\n", 408"{\n", 409"local i ;\n", 410"for i in $(>)\n", 411"{\n", 412"File $(i:D=$(<)) : $(i) ;\n", 413"}\n", 414"}\n", 415"rule Cc\n", 416"{\n", 417"Depends $(<) : $(>) ;\n", 418"if $(RELOCATE)\n", 419"{\n", 420"CcMv $(<) : $(>) ;\n", 421"}\n", 422"CCFLAGS on $(<) += $(CCFLAGS) $(SUBDIRCCFLAGS) $(OPTIM) ;\n", 423"CCHDRS on $(<) = [ on $(<) FIncludes $(HDRS) ] ;\n", 424"CCDEFS on $(<) = [ on $(<) FDefines $(DEFINES) ] ;\n", 425"}\n", 426"rule C++\n", 427"{\n", 428"Depends $(<) : $(>) ;\n", 429"if $(RELOCATE)\n", 430"{\n", 431"CcMv $(<) : $(>) ;\n", 432"}\n", 433"C++FLAGS on $(<) += $(C++FLAGS) $(SUBDIRC++FLAGS) $(OPTIM) ;\n", 434"CCHDRS on $(<) = [ on $(<) FIncludes $(HDRS) ] ;\n", 435"CCDEFS on $(<) = [ on $(<) FDefines $(DEFINES) ] ;\n", 436"}\n", 437"rule Chmod\n", 438"{\n", 439"if $(CHMOD) { Chmod1 $(<) ; }\n", 440"}\n", 441"rule File\n", 442"{\n", 443"LocalDepends files : $(<) ;\n", 444"Depends $(<) : $(>) ;\n", 445"SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", 446"MODE on $(<) = $(FILEMODE) ;\n", 447"Chmod $(<) ;\n", 448"}\n", 449"rule Fortran\n", 450"{\n", 451"Depends $(<) : $(>) ;\n", 452"}\n", 453"rule GenFile \n", 454"{\n", 455"local _t = [ FGristSourceFiles $(<) ] ;\n", 456"local _s = [ FAppendSuffix $(>[1]) : $(SUFEXE) ] ;\n", 457"Depends $(_t) : $(_s) $(>[2-]) ;\n", 458"GenFile1 $(_t) : $(_s) $(>[2-]) ;\n", 459"LocalClean clean : $(_t) ;\n", 460"}\n", 461"rule GenFile1\n", 462"{\n", 463"MakeLocate $(<) : $(LOCATE_SOURCE) ;\n", 464"SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", 465"}\n", 466"rule HardLink\n", 467"{\n", 468"LocalDepends files : $(<) ;\n", 469"Depends $(<) : $(>) ;\n", 470"SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", 471"}\n", 472"rule HdrRule\n", 473"{\n", 474"local s = $(>:G=$(HDRGRIST:E)) ;\n", 475"Includes $(<) : $(s) ;\n", 476"SEARCH on $(s) = $(HDRSEARCH) ;\n", 477"NoCare $(s) ;\n", 478"HDRSEARCH on $(s) = $(HDRSEARCH) ;\n", 479"HDRSCAN on $(s) = $(HDRSCAN) ;\n", 480"HDRRULE on $(s) = $(HDRRULE) ;\n", 481"HDRGRIST on $(s) = $(HDRGRIST) ;\n", 482"}\n", 483"rule InstallInto\n", 484"{\n", 485"local i t ;\n", 486"t = $(>:G=$(INSTALLGRIST)) ;\n", 487"LocalDepends install : $(t) ;\n", 488"LocalClean uninstall : $(t) ;\n", 489"SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", 490"MakeLocate $(t) : $(<) ;\n", 491"for i in $(>)\n", 492"{\n", 493"local tt = $(i:G=$(INSTALLGRIST)) ;\n", 494"Depends $(tt) : $(i) ;\n", 495"Install $(tt) : $(i) ;\n", 496"Chmod $(tt) ;\n", 497"if $(OWNER) && $(CHOWN) \n", 498"{ \n", 499"Chown $(tt) ;\n", 500"OWNER on $(tt) = $(OWNER) ;\n", 501"}\n", 502"if $(GROUP) && $(CHGRP) \n", 503"{ \n", 504"Chgrp $(tt) ;\n", 505"GROUP on $(tt) = $(GROUP) ;\n", 506"}\n", 507"}\n", 508"}\n", 509"rule InstallBin\n", 510"{\n", 511"local _t = [ FAppendSuffix $(>) : $(SUFEXE) ] ;\n", 512"InstallInto $(<) : $(_t) ;\n", 513"MODE on $(_t:G=$(INSTALLGRIST)) = $(EXEMODE) ;\n", 514"}\n", 515"rule InstallFile\n", 516"{\n", 517"InstallInto $(<) : $(>) ;\n", 518"MODE on $(>:G=$(INSTALLGRIST)) = $(FILEMODE) ;\n", 519"}\n", 520"rule InstallLib\n", 521"{\n", 522"InstallInto $(<) : $(>) ;\n", 523"MODE on $(>:G=$(INSTALLGRIST)) = $(FILEMODE) ;\n", 524"}\n", 525"rule InstallMan\n", 526"{\n", 527"local i s d ;\n", 528"for i in $(>)\n", 529"{\n", 530"switch $(i:S)\n", 531"{\n", 532"case .1 : s = 1 ; case .2 : s = 2 ; case .3 : s = 3 ;\n", 533"case .4 : s = 4 ; case .5 : s = 5 ; case .6 : s = 6 ;\n", 534"case .7 : s = 7 ; case .8 : s = 8 ; case .l : s = l ;\n", 535"case .n : s = n ; case .man : s = 1 ;\n", 536"}\n", 537"d = man$(s) ;\n", 538"InstallInto $(d:R=$(<)) : $(i) ;\n", 539"}\n", 540"MODE on $(>:G=$(INSTALLGRIST)) = $(FILEMODE) ;\n", 541"}\n", 542"rule InstallShell\n", 543"{\n", 544"InstallInto $(<) : $(>) ;\n", 545"MODE on $(>:G=$(INSTALLGRIST)) = $(SHELLMODE) ;\n", 546"}\n", 547"rule Lex\n", 548"{\n", 549"LexMv $(<) : $(>) ;\n", 550"Depends $(<) : $(>) ;\n", 551"MakeLocate $(<) : $(LOCATE_SOURCE) ;\n", 552"LocalClean clean : $(<) ;\n", 553"}\n", 554"rule Library\n", 555"{\n", 556"LibraryFromObjects $(<) : $(>:S=$(SUFOBJ)) ;\n", 557"Objects $(>) ;\n", 558"}\n", 559"rule LibraryFromObjects\n", 560"{\n", 561"local _i _l _s ;\n", 562"_s = [ FGristFiles $(>) ] ;\n", 563"_l = $(<:S=$(SUFLIB)) ;\n", 564"if $(KEEPOBJS)\n", 565"{\n", 566"LocalDepends obj : $(_s) ;\n", 567"}\n", 568"else\n", 569"{\n", 570"LocalDepends lib : $(_l) ;\n", 571"}\n", 572"if ! $(_l:D)\n", 573"{\n", 574"MakeLocate $(_l) $(_l)($(_s:BS)) : $(LOCATE_TARGET) ;\n", 575"}\n", 576"if $(NOARSCAN) \n", 577"{ \n", 578"Depends $(_l) : $(_s) ;\n", 579"}\n", 580"else\n", 581"{\n", 582"Depends $(_l) : $(_l)($(_s:BS)) ;\n", 583"for _i in $(_s)\n", 584"{\n", 585"Depends $(_l)($(_i:BS)) : $(_i) ;\n", 586"}\n", 587"}\n", 588"LocalClean clean : $(_l) ;\n", 589"if $(CRELIB) { CreLib $(_l) : $(_s[1]) ; }\n", 590"Archive $(_l) : $(_s) ;\n", 591"if $(RANLIB) { Ranlib $(_l) ; }\n", 592"if ! ( $(NOARSCAN) || $(NOARUPDATE) ) { RmTemps $(_l) : $(_s) ; }\n", 593"}\n", 594"rule Link\n", 595"{\n", 596"MODE on $(<) = $(EXEMODE) ;\n", 597"Chmod $(<) ;\n", 598"}\n", 599"rule LinkLibraries\n", 600"{\n", 601"local _t = [ FAppendSuffix $(<) : $(SUFEXE) ] ;\n", 602"Depends $(_t) : $(>:S=$(SUFLIB)) ;\n", 603"NEEDLIBS on $(_t) += $(>:S=$(SUFLIB)) ;\n", 604"}\n", 605"rule LocalClean\n", 606"{\n", 607"if [ FIsPrefix $(SUBDIR_UP) : $(SUBDIR_DOWN) ] {\n", 608"Clean $(1) : $(2) ;\n", 609"}\n", 610"}\n", 611"rule LocalDepends\n", 612"{\n", 613"if [ FIsPrefix $(SUBDIR_UP) : $(SUBDIR_DOWN) ] {\n", 614"Depends $(1) : $(2) ;\n", 615"}\n", 616"}\n", 617"rule Main\n", 618"{\n", 619"MainFromObjects $(<) : $(>:S=$(SUFOBJ)) ;\n", 620"Objects $(>) ;\n", 621"}\n", 622"rule MainFromObjects\n", 623"{\n", 624"local _s _t ;\n", 625"_s = [ FGristFiles $(>) ] ;\n", 626"_t = [ FAppendSuffix $(<) : $(SUFEXE) ] ;\n", 627"if $(_t) != $(<)\n", 628"{\n", 629"Depends $(<) : $(_t) ;\n", 630"NotFile $(<) ;\n", 631"}\n", 632"LocalDepends exe : $(_t) ;\n", 633"Depends $(_t) : $(_s) ;\n", 634"MakeLocate $(_t) : $(LOCATE_TARGET) ;\n", 635"LocalClean clean : $(_t) ;\n", 636"Link $(_t) : $(_s) ;\n", 637"}\n", 638"rule MakeLocate\n", 639"{\n", 640"if $(>)\n", 641"{\n", 642"LOCATE on $(<) = $(>) ;\n", 643"Depends $(<) : $(>[1]:G=dir) ;\n", 644"MkDir $(>[1]:G=dir) ;\n", 645"}\n", 646"}\n", 647"rule MkDir\n", 648"{\n", 649"NoUpdate $(<) ;\n", 650"if $(<:G=) != $(DOT) && ! $($(<)-mkdir) \n", 651"{\n", 652"$(<)-mkdir = true ;\n", 653"LocalDepends dirs : $(<) ;\n", 654"MkDir1 $(<) ;\n", 655"local s = $(<:P) ;\n", 656"if $(NT)\n", 657"{\n", 658"switch $(s)\n", 659"{\n", 660"case *: : s = ;\n", 661"case *:\\\\ : s = ;\n", 662"}\n", 663"}\n", 664"if $(s) = $(<)\n", 665"{\n", 666"NotFile $(s) ;\n", 667"}\n", 668"else if $(s:G=)\n", 669"{\n", 670"Depends $(<) : $(s) ;\n", 671"MkDir $(s) ;\n", 672"}\n", 673"}\n", 674"}\n", 675"rule Object\n", 676"{\n", 677"LocalClean clean : $(<) ;\n", 678"MakeLocate $(<) : $(LOCATE_TARGET) ;\n", 679"SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", 680"HDRS on $(<) = $(SEARCH_SOURCE) $(SUBDIRHDRS) $(HDRS) ;\n", 681"HDRRULE on $(>) = HdrRule ;\n", 682"HDRSCAN on $(>) = $(HDRPATTERN) ;\n", 683"HDRSEARCH on $(>) = \n", 684"$(SEARCH_SOURCE:E) $(SUBDIRHDRS) $(HDRS) $(STDHDRS) ;\n", 685"HDRGRIST on $(>) = $(HDRGRIST) ;\n", 686"DEFINES on $(<) += $(DEFINES) ;\n", 687"switch $(>:S)\n", 688"{\n", 689"case .asm : As $(<) : $(>) ;\n", 690"case .c : Cc $(<) : $(>) ;\n", 691"case .C : C++ $(<) : $(>) ;\n", 692"case .cc : C++ $(<) : $(>) ;\n", 693"case .cpp : C++ $(<) : $(>) ;\n", 694"case .f : Fortran $(<) : $(>) ;\n", 695"case .l : Cc $(<) : $(<:S=.c) ;\n", 696"Lex $(<:S=.c) : $(>) ;\n", 697"case .s : As $(<) : $(>) ;\n", 698"case .y : Cc $(<) : $(<:S=$(YACCGEN)) ;\n", 699"Yacc $(<:S=$(YACCGEN)) : $(>) ;\n", 700"case * : UserObject $(<) : $(>) ;\n", 701"}\n", 702"}\n", 703"rule ObjectCcFlags\n", 704"{\n", 705"CCFLAGS on [ FGristFiles $(<:S=$(SUFOBJ)) ] += $(>) ;\n", 706"}\n", 707"rule ObjectC++Flags\n", 708"{\n", 709"C++FLAGS on [ FGristFiles $(<:S=$(SUFOBJ)) ] += $(>) ;\n", 710"}\n", 711"rule ObjectDefines\n", 712"{\n", 713"local s = [ FGristFiles $(<:S=$(SUFOBJ)) ] ;\n", 714"DEFINES on $(s) += $(>) ;\n", 715"CCDEFS on $(s) = [ on $(s) FDefines $(DEFINES) ] ;\n", 716"}\n", 717"rule ObjectHdrs\n", 718"{\n", 719"local s = [ FGristFiles $(<:S=$(SUFOBJ)) ] ;\n", 720"HDRS on $(s) += $(>) ;\n", 721"CCHDRS on $(s) = [ on $(s) FIncludes $(HDRS) ] ;\n", 722"}\n", 723"rule Objects\n", 724"{\n", 725"local _i ;\n", 726"for _i in [ FGristFiles $(<) ]\n", 727"{\n", 728"Object $(_i:S=$(SUFOBJ)) : $(_i) ;\n", 729"LocalDepends obj : $(_i:S=$(SUFOBJ)) ;\n", 730"}\n", 731"}\n", 732"rule RmTemps\n", 733"{\n", 734"Temporary $(>) ;\n", 735"}\n", 736"rule Setuid\n", 737"{\n", 738"MODE on [ FAppendSuffix $(<) : $(SUFEXE) ] = 4711 ;\n", 739"}\n", 740"rule Shell\n", 741"{\n", 742"LocalDepends shell : $(<) ;\n", 743"Depends $(<) : $(>) ;\n", 744"SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", 745"MODE on $(<) = $(SHELLMODE) ;\n", 746"LocalClean clean : $(<) ;\n", 747"Chmod $(<) ;\n", 748"}\n", 749"rule SoftLink\n", 750"{\n", 751"LocalDepends files : $(<) ;\n", 752"Depends $(<) : $(>) ;\n", 753"SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", 754"LocalClean clean : $(<) ;\n", 755"}\n", 756"rule SubDir\n", 757"{\n", 758"local _top = $(<[1]) ;\n", 759"local _tokens = $(<[2-]) ;\n", 760"if ! $(_top)\n", 761"{\n", 762"Exit SubDir syntax error ;\n", 763"}\n", 764"if ! $($(_top)-SET)\n", 765"{\n", 766"$(_top)-SET = true ;\n", 767"local _originalTop = $($(_top)) ;\n", 768"if $($(_top))\n", 769"{\n", 770"$(_top)-UP = ;\n", 771"$(_top)-DOWN = ;\n", 772"$(_top)-ROOT = $($(_top)) ;\n", 773"}\n", 774"else\n", 775"{\n", 776"_tokens = [ FReverse $(_tokens) ] ;\n", 777"SUBDIR_DOWN = [ FReverse $(SUBDIR_DOWN) ] ;\n", 778"FStripCommon _tokens : SUBDIR_DOWN ;\n", 779"SUBDIR_DOWN = [ FReverse $(SUBDIR_DOWN) ] ;\n", 780"_tokens = [ FReverse $(_tokens) ] ;\n", 781"if $(SUBDIR_DOWN) && $(_tokens) \n", 782"{ \n", 783"Echo Warning: SubDir $(<) misplaced! ; \n", 784"}\n", 785"$(_top)-UP = $(SUBDIR_UP) $(_tokens) ;\n", 786"$(_top)-DOWN = $(SUBDIR_DOWN) ;\n", 787"$(_top)-ROOT = $(SUBDIR_ROOT:E=\"\") ;\n", 788"$(_top) = [ FSubDirPath $(_top) ] ;\n", 789"}\n", 790"SUBDIR_UP = $($(_top)-UP) ;\n", 791"SUBDIR_DOWN = ;\n", 792"SUBDIR_ROOT = $($(_top)-ROOT) ;\n", 793"if ! $(INVOCATION_SUBDIR_SET)\n", 794"{\n", 795"INVOCATION_SUBDIR_SET = true ;\n", 796"INVOCATION_SUBDIR_TOP = $($(_top)) ;\n", 797"INVOCATION_SUBDIR = $(_tokens) ;\n", 798"if $(INVOCATION_SUBDIR)\n", 799"{\n", 800"$(_top)-SET = ;\n", 801"$(_top) = $(_originalTop) ;\n", 802"include $(JAMFILE:D=$(INVOCATION_SUBDIR_TOP)) ;\n", 803"jumptoeof ;\n", 804"}\n", 805"}\n", 806"if $($(_top)RULES) { \n", 807"include $($(_top)RULES) ;\n", 808"} else { \n", 809"NoCare $(JAMRULES:R=$($(_top)):G=$(_top)) ;\n", 810"include $(JAMRULES:R=$($(_top)):G=$(_top)) ;\n", 811"}\n", 812"}\n", 813"SUBDIR_UP = $($(_top)-UP) ;\n", 814"SUBDIR_DOWN = $($(_top)-DOWN) $(_tokens) ;\n", 815"SUBDIR_ROOT = $($(_top)-ROOT) ;\n", 816"SUBDIR_TOKENS = $(SUBDIR_DOWN) ;\n", 817"SUBDIR = [ FSubDirPath $(<) ] ;\n", 818"SEARCH_SOURCE = $(SUBDIR) ;\n", 819"LOCATE_SOURCE = $(ALL_LOCATE_TARGET) $(SUBDIR) ;\n", 820"LOCATE_TARGET = $(ALL_LOCATE_TARGET) $(SUBDIR) ;\n", 821"SOURCE_GRIST = [ FGrist $(SUBDIR_TOKENS) ] ;\n", 822"HDRGRIST = $(SOURCE_GRIST) ;\n", 823"SUBDIR$(SUBDIRRESET) = ;\n", 824"$(SUBDIRRULES) $(<) ;\n", 825"}\n", 826"rule FSubDirPath\n", 827"{\n", 828"local _r = [ FRelPath $($(<[1])-UP) : $($(<[1])-DOWN) $(<[2-]) ] ;\n", 829"return $(_r:R=$($(<[1])-ROOT)) ;\n", 830"}\n", 831"rule SubDirCcFlags\n", 832"{\n", 833"SUBDIRCCFLAGS += $(<) ;\n", 834"}\n", 835"rule SubDirC++Flags\n", 836"{\n", 837"SUBDIRC++FLAGS += $(<) ;\n", 838"}\n", 839"rule SubDirHdrs\n", 840"{\n", 841"SUBDIRHDRS += [ FDirName $(<) ] ;\n", 842"}\n", 843"rule SubInclude\n", 844"{\n", 845"if ! $($(<[1]))\n", 846"{\n", 847"Exit SubInclude $(<[1]) without prior SubDir $(<[1]) ;\n", 848"}\n", 849"SubDir $(<) ;\n", 850"include $(JAMFILE:D=$(SUBDIR)) ;\n", 851"}\n", 852"rule SubRules\n", 853"{\n", 854"if ! $($(<[1]))\n", 855"{\n", 856"Exit SubRules $(<[1]) without prior SubDir $(<[1]) ;\n", 857"}\n", 858"SubDir $(<) ;\n", 859"SubDir $(>) ;\n", 860"}\n", 861"rule Undefines\n", 862"{\n", 863"UNDEFS on [ FAppendSuffix $(<) : $(SUFEXE) ] += $(UNDEFFLAG)$(>) ;\n", 864"}\n", 865"rule UserObject\n", 866"{\n", 867"Exit \"Unknown suffix on\" $(>) \"- see UserObject rule in Jamfile(5).\" ;\n", 868"}\n", 869"rule Yacc\n", 870"{\n", 871"local _h ;\n", 872"_h = $(<:S=.h) ;\n", 873"MakeLocate $(<) $(_h) : $(LOCATE_SOURCE) ;\n", 874"if $(YACC)\n", 875"{\n", 876"Depends $(<) $(_h) : $(>) ;\n", 877"Yacc1 $(<) $(_h) : $(>) ;\n", 878"YaccMv $(<) $(_h) : $(>) ;\n", 879"LocalClean clean : $(<) $(_h) ;\n", 880"}\n", 881"Includes $(<) : $(_h) ;\n", 882"}\n", 883"rule FGrist\n", 884"{\n", 885"return $(<:J=!) ;\n", 886"}\n", 887"rule FGristFiles \n", 888"{\n", 889"return $(<:G=$(SOURCE_GRIST:E)) ;\n", 890"}\n", 891"rule FGristSourceFiles\n", 892"{\n", 893"return [ FGristFiles $(<) ] ;\n", 894"}\n", 895"rule FIsPrefix\n", 896"{\n", 897"local a = $(1) ;\n", 898"local b = $(2) ;\n", 899"while $(a) && $(a[1]) = $(b[1]) {\n", 900"a = $(a[2-]) ;\n", 901"b = $(b[2-]) ;\n", 902"}\n", 903"if $(a) {\n", 904"return ;\n", 905"} else {\n", 906"return true ;\n", 907"}\n", 908"}\n", 909"rule FReverse \n", 910"{\n", 911"if $(1) { return [ FReverse $(1[2-]) ] $(1[1]) ; }\n", 912"}\n", 913"rule FSubDir\n", 914"{\n", 915"if ! $(<[1]) \n", 916"{\n", 917"return $(DOT) ;\n", 918"} \n", 919"else\n", 920"{\n", 921"local _i _d ;\n", 922"_d = $(DOTDOT) ;\n", 923"for _i in $(<[2-])\n", 924"{\n", 925"_d = $(_d:R=$(DOTDOT)) ;\n", 926"}\n", 927"return $(_d) ;\n", 928"}\n", 929"}\n", 930"rule FStripCommon\n", 931"{\n", 932"if $($(<)[1]) && $($(<)[1]) = $($(>)[1])\n", 933"{\n", 934"$(<) = $($(<)[2-]) ;\n", 935"$(>) = $($(>)[2-]) ;\n", 936"FStripCommon $(<) : $(>) ;\n", 937"}\n", 938"}\n", 939"rule FRelPath\n", 940"{\n", 941"local _l _r ;\n", 942"_l = $(<) ;\n", 943"_r = $(>) ;\n", 944"FStripCommon _l : _r ;\n", 945"_l = [ FSubDir $(_l) ] ;\n", 946"_r = [ FDirName $(_r) ] ;\n", 947"if $(_r) = $(DOT) {\n", 948"return $(_l) ;\n", 949"} else {\n", 950"return $(_r:R=$(_l)) ;\n", 951"}\n", 952"}\n", 953"rule FAppendSuffix\n", 954"{\n", 955"if $(>)\n", 956"{\n", 957"local _i _o ;\n", 958"for _i in $(<)\n", 959"{\n", 960"if $(_i:S)\n", 961"{\n", 962"_o += $(_i) ;\n", 963"}\n", 964"else\n", 965"{\n", 966"_o += $(_i:S=$(>)) ;\n", 967"}\n", 968"}\n", 969"return $(_o) ;\n", 970"}\n", 971"else\n", 972"{\n", 973"return $(<) ;\n", 974"}\n", 975"}\n", 976"rule FQuote { return \\\\\\\"$(<)\\\\\\\" ; }\n", 977"rule FDefines { return -D$(<) ; }\n", 978"rule FIncludes { return -I$(<) ; }\n", 979"rule FDirName\n", 980"{\n", 981"local _i ;\n", 982"local _s = $(DOT) ;\n", 983"for _i in $(<)\n", 984"{\n", 985"_s = $(_i:R=$(_s)) ;\n", 986"}\n", 987"return $(_s) ;\n", 988"}\n", 989"if $(OS2)\n", 990"{\n", 991"rule FQuote { return \\\"$(<)\\\" ; }\n", 992"rule FIncludes { return /I$(<) ; }\n", 993"}\n", 994"else if $(NT)\n", 995"{\n", 996"rule FDefines { return /D$(<) ; }\n", 997"rule FIncludes { return /I$(<) ; }\n", 998"}\n", 999"else if $(MAC)\n", 1000"{\n", 1001"rule FQuote { return \\\"$(<)\\\" ; }\n", 1002"rule FDefines { return \"-define '$(<)'\" ; }\n", 1003"rule FIncludes { return \\\"$(<:J=,)\\\" ; }\n", 1004"}\n", 1005"else if $(VMS)\n", 1006"{\n", 1007"rule FQuote { return \\\"\\\"\\\"$(<)\\\"\\\"\\\" ; }\n", 1008"rule FDefines { return \"/define=( $(<:J=,) )\" ; }\n", 1009"rule FIncludes { return \"/inc=( $(<:J=,) )\" ; }\n", 1010"rule FDirName\n", 1011"{\n", 1012"local _s _i ;\n", 1013"if ! $(<)\n", 1014"{\n", 1015"_s = $(DOT) ;\n", 1016"}\n", 1017"else \n", 1018"{\n", 1019"switch $(<[1])\n", 1020"{\n", 1021"case *:* : _s = $(<[1]) ;\n", 1022"case \\\\[*\\\\] : _s = $(<[1]) ;\n", 1023"case * : _s = [.$(<[1])] ;\n", 1024"}\n", 1025"for _i in [.$(<[2-])]\n", 1026"{\n", 1027"_s = $(_i:R=$(_s)) ;\n", 1028"}\n", 1029"}\n", 1030"return $(_s) ;\n", 1031"}\n", 1032"}\n", 1033"actions updated together piecemeal Archive\n", 1034"{\n", 1035"$(AR) $(<) $(>)\n", 1036"}\n", 1037"actions As\n", 1038"{\n", 1039"$(AS) $(ASFLAGS) $(ASHDRS) -o $(<) $(>)\n", 1040"}\n", 1041"actions C++\n", 1042"{\n", 1043"$(C++) -c -o $(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) $(>)\n", 1044"}\n", 1045"actions Cc\n", 1046"{\n", 1047"$(CC) -c -o $(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>)\n", 1048"}\n", 1049"actions Chgrp\n", 1050"{\n", 1051"$(CHGRP) $(GROUP) $(<)\n", 1052"}\n", 1053"actions Chmod1\n", 1054"{\n", 1055"$(CHMOD) $(MODE) $(<)\n", 1056"}\n", 1057"actions Chown\n", 1058"{\n", 1059"$(CHOWN) $(OWNER) $(<)\n", 1060"}\n", 1061"actions piecemeal together existing Clean\n", 1062"{\n", 1063"$(RM) $(>)\n", 1064"}\n", 1065"actions File\n", 1066"{\n", 1067"$(CP) $(>) $(<)\n", 1068"}\n", 1069"actions GenFile1\n", 1070"{\n", 1071"$(>[1]) $(<) $(>[2-])\n", 1072"}\n", 1073"actions Fortran\n", 1074"{\n", 1075"$(FORTRAN) $(FORTRANFLAGS) -o $(<) $(>)\n", 1076"}\n", 1077"actions HardLink\n", 1078"{\n", 1079"$(RM) $(<) && $(LN) $(>) $(<)\n", 1080"}\n", 1081"actions Install\n", 1082"{\n", 1083"$(CP) $(>) $(<) \n", 1084"}\n", 1085"actions Lex\n", 1086"{\n", 1087"$(LEX) $(>)\n", 1088"}\n", 1089"actions LexMv\n", 1090"{\n", 1091"$(MV) lex.yy.c $(<)\n", 1092"}\n", 1093"actions Link bind NEEDLIBS\n", 1094"{\n", 1095"$(LINK) $(LINKFLAGS) -o $(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS) \n", 1096"}\n", 1097"actions MkDir1\n", 1098"{\n", 1099"$(MKDIR) \"$(<)\"\n", 1100"}\n", 1101"actions together Ranlib\n", 1102"{\n", 1103"$(RANLIB) $(<)\n", 1104"}\n", 1105"actions quietly updated piecemeal together RmTemps\n", 1106"{\n", 1107"$(RM) $(>)\n", 1108"}\n", 1109"actions Shell\n", 1110"{\n", 1111"$(AWK) '\n", 1112"NR == 1 { print \"$(SHELLHEADER)\" }\n", 1113"NR == 1 && /^[#:]/ { next }\n", 1114"/^##/ { next }\n", 1115"{ print }\n", 1116"' < $(>) > $(<)\n", 1117"}\n", 1118"actions SoftLink\n", 1119"{\n", 1120"$(RM) $(<) && $(LN) -s $(>) $(<)\n", 1121"}\n", 1122"actions Yacc1\n", 1123"{\n", 1124"$(YACC) $(YACCFLAGS) $(>)\n", 1125"}\n", 1126"actions YaccMv\n", 1127"{\n", 1128"$(MV) $(YACCFILES).c $(<[1])\n", 1129"$(MV) $(YACCFILES).h $(<[2])\n", 1130"}\n", 1131"if $(RELOCATE)\n", 1132"{\n", 1133"actions C++\n", 1134"{\n", 1135"$(C++) -c $(C++FLAGS) $(CCDEFS) $(CCHDRS) $(>)\n", 1136"}\n", 1137"actions Cc\n", 1138"{\n", 1139"$(CC) -c $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>)\n", 1140"}\n", 1141"actions ignore CcMv\n", 1142"{\n", 1143"[ $(<) != $(>:BS=$(SUFOBJ)) ] && $(MV) $(>:BS=$(SUFOBJ)) $(<)\n", 1144"}\n", 1145"}\n", 1146"if $(NOARUPDATE)\n", 1147"{\n", 1148"actions Archive\n", 1149"{\n", 1150"$(AR) $(<) $(>)\n", 1151"}\n", 1152"}\n", 1153"if $(UNIX)\n", 1154"{\n", 1155"actions GenFile1\n", 1156"{\n", 1157"PATH=\"$PATH:.\"\n", 1158"$(>[1]) $(<) $(>[2-])\n", 1159"}\n", 1160"}\n", 1161"if $(NT) && $(MSVCNT)\n", 1162"{\n", 1163"actions updated together piecemeal Archive\n", 1164"{\n", 1165"if exist $(<) set _$(<:B)_=$(<)\n", 1166"$(AR) /out:$(<) %_$(<:B)_% $(>)\n", 1167"}\n", 1168"actions As\n", 1169"{\n", 1170"$(AS) /Ml /p /v /w2 $(>) $(<) ,nul,nul;\n", 1171"}\n", 1172"actions Cc\n", 1173"{\n", 1174"$(CC) /c /Fo$(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) /I$(STDHDRS) $(>)\n", 1175"}\n", 1176"actions C++\n", 1177"{\n", 1178"$(C++) /c /Fo$(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) /I$(STDHDRS) /Tp$(>)\n", 1179"}\n", 1180"actions Link bind NEEDLIBS\n", 1181"{\n", 1182"$(LINK) $(LINKFLAGS) /out:$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n", 1183"}\n", 1184"}\n", 1185"else if $(NT) && $(MSVC)\n", 1186"{\n", 1187"actions updated together piecemeal Archive\n", 1188"{\n", 1189"$(AR) $(<) -+$(>)\n", 1190"}\n", 1191"actions Cc\n", 1192"{\n", 1193"$(CC) /c /Fo$(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>)\n", 1194"}\n", 1195"actions C++\n", 1196"{\n", 1197"$(C++) /c /Fo$(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) /Tp$(>)\n", 1198"}\n", 1199"actions Link bind NEEDLIBS\n", 1200"{\n", 1201"$(LINK) $(LINKFLAGS) /out:$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n", 1202"}\n", 1203"}\n", 1204"else if $(NT) && $(BCCROOT)\n", 1205"{\n", 1206"actions updated together piecemeal Archive\n", 1207"{\n", 1208"$(AR) $(<) -+$(>)\n", 1209"}\n", 1210"actions Link bind NEEDLIBS\n", 1211"{\n", 1212"$(LINK) -e$(<) $(LINKFLAGS) $(UNDEFS) -L$(LINKLIBS) $(NEEDLIBS) $(>)\n", 1213"}\n", 1214"actions C++\n", 1215"{\n", 1216"$(C++) -c -o$(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) $(>)\n", 1217"}\n", 1218"actions Cc\n", 1219"{\n", 1220"$(CC) -c -o$(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>)\n", 1221"}\n", 1222"}\n", 1223"else if $(OS2) && $(WATCOM)\n", 1224"{\n", 1225"actions together piecemeal Archive\n", 1226"{\n", 1227"$(AR) $(<) +-$(>) \n", 1228"}\n", 1229"actions Cc\n", 1230"{\n", 1231"$(CC) /Fo=$(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>)\n", 1232"}\n", 1233"actions C++\n", 1234"{\n", 1235"$(C++) /Fo=$(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) $(>)\n", 1236"}\n", 1237"actions Link bind NEEDLIBS\n", 1238"{\n", 1239"$(LINK) $(LINKFLAGS) /Fe=$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n", 1240"}\n", 1241"actions Shell\n", 1242"{\n", 1243"$(CP) $(>) $(<)\n", 1244"}\n", 1245"}\n", 1246"else if $(VMS)\n", 1247"{\n", 1248"actions updated together piecemeal Archive \n", 1249"{\n", 1250"lib/replace $(<) $(>[1]) ,$(>[2-])\n", 1251"}\n", 1252"actions Cc\n", 1253"{ \n", 1254"$(CC)/obj=$(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>) \n", 1255"}\n", 1256"actions C++\n", 1257"{ \n", 1258"$(C++)/obj=$(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) $(>) \n", 1259"}\n", 1260"actions piecemeal together existing Clean\n", 1261"{\n", 1262"$(RM) $(>[1]);* ,$(>[2-]);*\n", 1263"}\n", 1264"actions together quietly CreLib\n", 1265"{\n", 1266"if f$search(\"$(<)\") .eqs. \"\" then lib/create $(<)\n", 1267"}\n", 1268"actions GenFile1\n", 1269"{\n", 1270"mcr $(>[1]) $(<) $(>[2-])\n", 1271"}\n", 1272"actions Link bind NEEDLIBS\n", 1273"{\n", 1274"$(LINK)/exe=$(<) $(LINKFLAGS) $(>:J=,) ,$(NEEDLIBS)/lib ,$(LINKLIBS)\n", 1275"}\n", 1276"actions quietly updated piecemeal together RmTemps\n", 1277"{\n", 1278"$(RM) $(>[1]);* ,$(>[2-]);*\n", 1279"}\n", 1280"actions Shell\n", 1281"{\n", 1282"$(CP) $(>) $(<)\n", 1283"}\n", 1284"}\n", 1285"else if $(MAC)\n", 1286"{\n", 1287"actions together Archive \n", 1288"{\n", 1289"$(LINK) -library -o $(<) $(>)\n", 1290"}\n", 1291"actions Cc\n", 1292"{\n", 1293"set -e MWCincludes $(CCHDRS)\n", 1294"$(CC) -o $(<) $(CCFLAGS) $(CCDEFS) $(>) \n", 1295"}\n", 1296"actions C++\n", 1297"{\n", 1298"set -e MWCincludes $(CCHDRS)\n", 1299"$(CC) -o $(<) $(C++FLAGS) $(CCDEFS) $(>) \n", 1300"}\n", 1301"actions Link bind NEEDLIBS\n", 1302"{\n", 1303"$(LINK) -o $(<) $(LINKFLAGS) $(>) $(NEEDLIBS) \"$(LINKLIBS)\"\n", 1304"}\n", 1305"}\n", 1306"if $(WIN98)\n", 1307"{\n", 1308"actions existing Clean\n", 1309"{\n", 1310"del $(>)\n", 1311"}\n", 1312"}\n", 1313"rule BULK { Bulk $(<) : $(>) ; }\n", 1314"rule FILE { File $(<) : $(>) ; }\n", 1315"rule HDRRULE { HdrRule $(<) : $(>) ; }\n", 1316"rule INSTALL { Install $(<) : $(>) ; }\n", 1317"rule LIBRARY { Library $(<) : $(>) ; }\n", 1318"rule LIBS { LinkLibraries $(<) : $(>) ; }\n", 1319"rule LINK { Link $(<) : $(>) ; }\n", 1320"rule MAIN { Main $(<) : $(>) ; }\n", 1321"rule SETUID { Setuid $(<) ; }\n", 1322"rule SHELL { Shell $(<) : $(>) ; }\n", 1323"rule UNDEFINES { Undefines $(<) : $(>) ; }\n", 1324"rule INSTALLBIN { InstallBin $(BINDIR) : $(<) ; }\n", 1325"rule INSTALLLIB { InstallLib $(LIBDIR) : $(<) ; }\n", 1326"rule INSTALLMAN { InstallMan $(MANDIR) : $(<) ; }\n", 1327"rule addDirName { $(<) += [ FDirName $(>) ] ; }\n", 1328"rule makeCommon { FStripCommon $(<) : $(>) ; }\n", 1329"rule _makeCommon { FStripCommon $(<) : $(>) ; }\n", 1330"rule makeDirName { $(<) = [ FDirName $(>) ] ; }\n", 1331"rule makeGrist { $(<) = [ FGrist $(>) ] ; }\n", 1332"rule makeGristedName { $(<) = [ FGristSourceFiles $(>) ] ; }\n", 1333"rule makeRelPath { $(<[1]) = [ FRelPath $(<[2-]) : $(>) ] ; }\n", 1334"rule makeString { $(<) = $(>:J) ; }\n", 1335"rule makeSubDir { $(<) = [ FSubDir $(>) ] ; }\n", 1336"rule makeSuffixed { $(<[1]) = [ FAppendSuffix $(>) : $(<[2]) ] ; }\n", 1337"include $(JAMFILE) ;\n", 13380 }; 1339