l :l:l__text__TEXT__data__DATA$m__cstring__TEXT@W P@\fi{f $@n CWZfknC @`Wf"n4M``W"f@WWfWf,Df`W{%2C`C`Wf.EXfxM "@dwfWWf*7G` @ y  !`!!!!!"$";"J"`"""" #!#C5#I#Z#j#W#f####n $'$:$M$`$r$$$M$C% %K%`%r%%W%f#n'$:$M$`$r$$%$C% %K%`%r%%W%f%f%%&K%& &r$<&Q&K%b&Q&o&&Q&&<&Q&&Q&&&&&'C*'@''L'Y'Q&n'}'''Q&'Q&''n((CQ&6(Q&o&B(Q&P(Q&`(((((Q&o&W'$:$M$((%(`%r%%W())")1)N)\)l)%2z)))))))**:*J*W*t********++(+D+`+++j#+++++, ,`,,-@---f--.WI.fT._.fn.WW.f-.f.W./@/Wt/f-.f.W//@/W/f/W/f 0-@0e00W0f-W0f01@111W1f1@0W2f 0-@0W2f@2b22223 3@3Wb3ft3333@03_.f4%4=4U4d4~444W4~444WWW4f 5Q55W5f55W6f55W!6f26_.fA6f`666 7WG7`7W5W7f57W7f7-17W8f 8N8W^8fw8888f8W"f8W8f 9WW9~4h9W"f99f9WW: :L:::W;f;0W+;f@;;;W;f<N8W+<fA<8`<<f<<W<<=1'=W==fN=fW===WW=f==f >>6>E>\fY>ff>y>WW>f>W>f>>WWW>f7?@0@?y???? @`@@f@@@@ A@AAAAA B`BWWBfBWBfCW8Cf`CCCWCf`CD DWRDf`DDfDDWWEfEW#Ef@EWuEfE-@0E70WEf 0-@07WEfEEFfFW9FfNFdFfsFFFW"fFG@GGFG~4GWH@HHHWHI IAIXIsIIIWWHJ I@JJJJK@KnKKWKfK LWBLfVLWoLfLWLfLWLfLf MWXMMWMfLfMWXMMWNf NWdNfNWNfNNO,Of8OUOpOOWOWOfOWOfPW#Pf;PfQPW`PfgPvPfPfPPWWPWWPf QWTQfbQfqQQ"fQQQfQWQWWQfRf*R@RVRWWrRfRRRRRRR SS&SWW>SfN=fgPvPfRSf^SW"fmSWWPW"fQPWWSS TDTf`DSTvPfhTW~TWTfTTWUf UTWfT`UUWfU V`VDTfVVfVW`PfVfVWWW;WfhTWW~TWW`WfWWWfWWWfXW8Xf`XWXfXWXfXWXfXW YfKYWWYfeYWvYfYWYfYWYfZWZf0ZWBZfOZW\ZfkZWZfZWZfZW[f[W@[fKYWt[f[[[[[[W \f \WB\fQ\Wl\f|\\W.fWf\W8Xf]W.]f`]WW]f]fWWW]fvYf]YWW]f`Wf^@^WWf^W8Xf^WWf _WZf_WW_f`Wf_W8Xf`WWf@`WZf_WW{`f`Wf_WZf`WWfaW8Xf@aWWuafafaW8XfaWWf bWZf`bWt[feYWWfbfcW8X~4@cWW~4cW YfcWcf dWvYfSdWZfdW@[fcWt[feYWWfdfeW8Xfe@eWWfeeWZfeWWef ff"fWW@fffg@gggh@h`hhh i`iii j`jjj k`kkk$lJAMBASEDATE = 2002.05.09 ; if $(NT) { MV ?= move /y ; CP ?= copy ; RM ?= del /f/q ; RMDIR ?= rmdir /s/q ; SLASH ?= \\ ; SUFLIB ?= .lib ; SUFOBJ ?= .obj ; SUFEXE ?= .exe ; if $(BCCROOT) AR ?= tlib /C /P64 ; CC ?= bcc32 ; CCFLAGS ?= -v -w- -q -DWIN -tWR -tWM -tWC ; C++ ?= $(CC) ; C++FLAGS ?= $(CCFLAGS) -P ; LINK ?= $(CC) ; LINKFLAGS ?= $(CCFLAGS) ; STDLIBPATH ?= $(BCCROOT)\\lib ; STDHDRS ?= $(BCCROOT)\\include ; NOARSCAN ?= true ; } else if $(MSVC) AR ?= lib /nologo ; CC ?= cl /nologo ; CCFLAGS ?= /D \"WIN\" ; C++FLAGS ?= $(CCFLAGS) ; LINKLIBS ?= $(MSVC)\\lib\\mlibce.lib $(MSVC)\\lib\\oldnames.lib ; LINKLIBS ?= ; OPTIM ?= ; STDHDRS ?= $(MSVC)\\include ; UNDEFFLAG ?= "/u _" ; else if $(MSVCNT) || $(MSVCDIR) MSVCNT ?= $(MSVCDIR) ; local I ; if $(OSPLAT) = IA64 { I = ia64\\ ; } else { I = "" ; } AR ?= lib ; AS ?= masm386 ; CCFLAGS ?= "" ; LINK ?= link /nologo ; LINKFLAGS ?= "" ; $(MSVCNT)\\lib\\$(I)libc.lib $(MSVCNT)\\lib\\$(I)oldnames.lib $(MSVCNT)\\lib\\$(I)kernel32.lib ; OPTIM ?= "" ; STDHDRS ?= $(MSVCNT)\\include ; else EXIT On NT, set BCCROOT, MSVCDIR, MSVCNT, or MSVC to the root of the Borland or Microsoft directories. ; else if $(MINGW) Echo "MingW32" ; CC ?= gcc ; C++ ?= g++ ; CCFLAGS += -DMINGW ; RANLIB ?= "ranlib" ; else if $(OS2) WATCOM ?= $(watcom) ; if ! $(WATCOM) Exit On OS2, set WATCOM to the root of the Watcom directory. ; AR ?= wlib ; BINDIR ?= \\os2\\apps ; CC ?= wcc386 ; CCFLAGS ?= /zq /DOS2 /I$(WATCOM)\\h ; # zq=quiet C++ ?= wpp386 ; DOT ?= . ; DOTDOT ?= .. ; LINK ?= wcl386 ; LINKFLAGS ?= /zq ; # zq=quiet MV ?= move ; OPTIM ?= ; RM ?= del /f ; STDHDRS ?= $(WATCOM)\\h ; else if $(VMS) C++ ?= cxx ; C++FLAGS ?= ; CC ?= cc ; CCFLAGS ?= ; CHMOD ?= set file/prot= ; CP ?= copy/replace ; CRELIB ?= true ; DOT ?= [] ; DOTDOT ?= [-] ; EXEMODE ?= (w:e) ; FILEMODE ?= (w:r) ; HDRS ?= ; LINK ?= link ; MKDIR ?= create/dir ; MV ?= rename ; RM ?= delete ; RUNVMS ?= mcr ; SHELLMODE ?= (w:er) ; SLASH ?= . ; STDHDRS ?= decc$library_include ; SUFLIB ?= .olb ; switch $(OS) case OPENVMS : CCFLAGS ?= /stand=vaxc ; case VMS : LINKLIBS ?= sys$library:vaxcrtl.olb/lib ; else if $(MAC) local OPT ; CW ?= "{CW}" ; MACHDRS ?= "$(UMACHDRS):Universal:Interfaces:CIncludes" "$(CW):MSL:MSL_C:MSL_Common:Include" "$(CW):MSL:MSL_C:MSL_MacOS:Include" ; MACLIBS ?= "$(CW):MacOS Support:Universal:Libraries:StubLibraries:Interfacelib" "$(CW):MacOS Support:Universal:Libraries:StubLibraries:Mathlib" ; MPWLIBS ?= "$(CW):MacOS Support:Libraries:Runtime:Libs:MSL_MPWCRuntime_PPC.lib" "$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL_C_PPC_MPW.Lib" ; MPWNLLIBS ?= "$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL_C_PPC_MPW(NL).Lib" ; SIOUXHDRS ?= ; SIOUXLIBS ?= "$(CW):MacOS Support:Libraries:Runtime:Libs:MSL_Runtime_PPC.lib" "$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL_SIOUX_PPC.Lib" "$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL_C_PPC.Lib" ; C++ ?= mwcppc ; C++FLAGS ?= -w off ; CC ?= mwcppc ; CCFLAGS ?= -w off ; CP ?= duplicate -y ; DOT ?= ":" ; DOTDOT ?= "::" ; HDRS ?= $(MACHDRS) $(MPWHDRS) ; LINK ?= mwlinkppc ; LINKFLAGS ?= -mpwtool -warn ; LINKLIBS ?= $(MACLIBS) $(MPWLIBS) ; MKDIR ?= newfolder ; MV ?= rename -y ; RM ?= delete -y ; SLASH ?= ":" ; STDHDRS ?= ; SUFOBJ ?= .o ; else if $(OS) = BEOS && $(OSPLAT) = PPC AR ?= mwld -xml -o ; BINDIR ?= /boot/home/config/bin ; CC ?= mwcc ; CCFLAGS ?= -nosyspath ; C++FLAGS ?= -nosyspath ; CHMOD ?= chmod ; CHGRP ?= chgrp ; CHOWN ?= chown ; FORTRAN ?= "" ; LEX ?= flex ; LIBDIR ?= /boot/home/config/lib ; LINK ?= mwld ; MANDIR ?= /boot/home/config/man ; RANLIB ?= ranlib ; STDHDRS ?= /boot/develop/headers/posix ; YACC ?= bison -y ; YACCGEN ?= .c ; YACCFILES ?= y.tab ; YACCFLAGS ?= -d ; else if $(OS) = BEOS LINK ?= gcc ; else if $(UNIX) switch $(OS) case AIX : LINKLIBS ?= -lbsd ; case AMIGA : case CYGWIN : CCFLAGS += -D__cygwin__ ; JAMSHELL ?= sh -c ; RANLIB ?= "" ; case DGUX : RELOCATE ?= true ; case HPUX : case INTERIX : case IRIX : case MPEIX : C++ ?= gcc ; CCFLAGS += -D_POSIX_SOURCE ; HDRS += /usr/include ; RANLIB ?= "" ; NOARUPDATE ?= true ; case MVS : case NEXT : AR ?= libtool -o ; case MACOSX : C++ ?= c++ ; MANDIR ?= /usr/local/share/man ; case NCR : case PTX : case QNX : CCFLAGS ?= -Q ; # quiet C++FLAGS ?= -Q ; # quiet LINKFLAGS ?= -Q ; # quiet case SCO : case SINIX : case SOLARIS : AR ?= "/usr/ccs/bin/ar ru" ; case UNICOS : NOARSCAN ?= true ; OPTIM ?= -O0 ; case UNIXWARE : LEX ?= lex ; OPTIM ?= -O ; YACC ?= yacc ; AR ?= ar ru ; AS ?= as ; ASFLAGS ?= ; AWK ?= awk ; BINDIR ?= /usr/local/bin ; C++ ?= cc ; CP ?= cp -f ; CRELIB ?= ; EXEMODE ?= 711 ; FILEMODE ?= 644 ; FORTRAN ?= f77 ; FORTRANFLAGS ?= ; INSTALLGRIST ?= installed ; JAMFILE ?= Jamfile ; JAMRULES ?= Jamrules ; LEX ?= ; LIBDIR ?= /usr/local/lib ; LINKFLAGS ?= ; LN ?= ln ; MANDIR ?= /usr/local/man ; MKDIR ?= mkdir ; MV ?= mv -f ; RCP ?= rcp ; RM ?= rm -f ; RMDIR ?= $(RM) ; RSH ?= rsh ; SED ?= sed ; SHELLHEADER ?= "#!/bin/sh" ; SHELLMODE ?= 755 ; SLASH ?= / ; STDHDRS ?= /usr/include ; SUBDIRRULES ?= ; SUBDIRRESET ?= ASFLAGS HDRS C++FLAGS CCFLAGS ; SUFEXE ?= "" ; SUFLIB ?= .a ; UNDEFFLAG ?= "-u _" ; YACC ?= ; YACCGEN ?= ; YACCFILES ?= ; YACCFLAGS ?= ; HDRPATTERN = "^[ ]*#[ ]*include[ ]*[<\"]([^\">]*)[\">].*$" ; OSFULL = $(OS)$(OSVER)$(OSPLAT) $(OS)$(OSPLAT) $(OS)$(OSVER) $(OS) ; Depends all : shell files lib exe obj ; Depends all shell files lib exe obj : first ; NotFile all first shell files lib exe obj dirs clean uninstall ; Always clean uninstall ; rule As Depends $(<) : $(>) ; ASFLAGS on $(<) += $(ASFLAGS) $(SUBDIRASFLAGS) ; ASHDRS on $(<) = [ FIncludes $(SEARCH_SOURCE) $(SUBDIRHDRS) $(HDRS) ] ; rule Bulk local i ; for i in $(>) File $(i:D=$(<)) : $(i) ; rule Cc if $(RELOCATE) CcMv $(<) : $(>) ; CCFLAGS on $(<) += $(CCFLAGS) $(SUBDIRCCFLAGS) $(OPTIM) ; CCHDRS on $(<) = [ on $(<) FIncludes $(HDRS) ] ; CCDEFS on $(<) = [ on $(<) FDefines $(DEFINES) ] ; rule C++ C++FLAGS on $(<) += $(C++FLAGS) $(SUBDIRC++FLAGS) $(OPTIM) ; rule Chmod if $(CHMOD) { Chmod1 $(<) ; } rule File Depends files : $(<) ; SEARCH on $(>) = $(SEARCH_SOURCE) ; MODE on $(<) = $(FILEMODE) ; Chmod $(<) ; rule Fortran rule GenFile local _t = [ FGristSourceFiles $(<) ] ; local _s = [ FAppendSuffix $(>[1]) : $(SUFEXE) ] ; Depends $(_t) : $(_s) $(>[2-]) ; GenFile1 $(_t) : $(_s) $(>[2-]) ; Clean clean : $(_t) ; rule GenFile1 MakeLocate $(<) : $(LOCATE_SOURCE) ; rule HardLink rule HdrRule local s = $(>:G=$(HDRGRIST:E)) ; Includes $(<) : $(s) ; SEARCH on $(s) = $(HDRSEARCH) ; NoCare $(s) ; HDRSEARCH on $(s) = $(HDRSEARCH) ; HDRSCAN on $(s) = $(HDRSCAN) ; HDRRULE on $(s) = $(HDRRULE) ; HDRGRIST on $(s) = $(HDRGRIST) ; rule InstallInto local i t ; t = $(>:G=$(INSTALLGRIST)) ; Depends install : $(t) ; Clean uninstall : $(t) ; MakeLocate $(t) : $(<) ; local tt = $(i:G=$(INSTALLGRIST)) ; Depends $(tt) : $(i) ; Install $(tt) : $(i) ; Chmod $(tt) ; if $(OWNER) && $(CHOWN) { Chown $(tt) ; OWNER on $(tt) = $(OWNER) ; if $(GROUP) && $(CHGRP) Chgrp $(tt) ; GROUP on $(tt) = $(GROUP) ; rule InstallBin local _t = [ FAppendSuffix $(>) : $(SUFEXE) ] ; InstallInto $(<) : $(_t) ; MODE on $(_t:G=$(INSTALLGRIST)) = $(EXEMODE) ; rule InstallFile InstallInto $(<) : $(>) ; MODE on $(>:G=$(INSTALLGRIST)) = $(FILEMODE) ; rule InstallLib rule InstallMan local i s d ; switch $(i:S) case .1 : s = 1 ; case .2 : s = 2 ; case .3 : s = 3 ; case .4 : s = 4 ; case .5 : s = 5 ; case .6 : s = 6 ; case .7 : s = 7 ; case .8 : s = 8 ; case .l : s = l ; case .n : s = n ; case .man : s = 1 ; d = man$(s) ; InstallInto $(d:R=$(<)) : $(i) ; rule InstallShell MODE on $(>:G=$(INSTALLGRIST)) = $(SHELLMODE) ; rule Lex LexMv $(<) : $(>) ; Clean clean : $(<) ; rule Library LibraryFromObjects $(<) : $(>:S=$(SUFOBJ)) ; Objects $(>) ; rule LibraryFromObjects local _i _l _s ; _s = [ FGristFiles $(>) ] ; _l = $(<:S=$(SUFLIB)) ; if $(KEEPOBJS) Depends obj : $(_s) ; Depends lib : $(_l) ; if ! $(_l:D) MakeLocate $(_l) $(_l)($(_s:BS)) : $(LOCATE_TARGET) ; if $(NOARSCAN) Depends $(_l) : $(_s) ; Depends $(_l) : $(_l)($(_s:BS)) ; for _i in $(_s) Depends $(_l)($(_i:BS)) : $(_i) ; Clean clean : $(_l) ; if $(CRELIB) { CreLib $(_l) : $(_s[1]) ; } Archive $(_l) : $(_s) ; if $(RANLIB) { Ranlib $(_l) ; } if ! ( $(NOARSCAN) || $(NOARUPDATE) ) { RmTemps $(_l) : $(_s) ; } rule Link MODE on $(<) = $(EXEMODE) ; rule LinkLibraries local _t = [ FAppendSuffix $(<) : $(SUFEXE) ] ; Depends $(_t) : $(>:S=$(SUFLIB)) ; NEEDLIBS on $(_t) += $(>:S=$(SUFLIB)) ; rule Main MainFromObjects $(<) : $(>:S=$(SUFOBJ)) ; rule MainFromObjects local _s _t ; _t = [ FAppendSuffix $(<) : $(SUFEXE) ] ; if $(_t) != $(<) Depends $(<) : $(_t) ; NotFile $(<) ; Depends exe : $(_t) ; Depends $(_t) : $(_s) ; MakeLocate $(_t) : $(LOCATE_TARGET) ; Link $(_t) : $(_s) ; rule MakeLocate if $(>) LOCATE on $(<) = $(>) ; Depends $(<) : $(>[1]:G=dir) ; MkDir $(>[1]:G=dir) ; rule MkDir NoUpdate $(<) ; if $(<:G=) != $(DOT) && ! $($(<)-mkdir) $(<)-mkdir = true ; Depends dirs : $(<) ; MkDir1 $(<) ; local s = $(<:P) ; switch $(s) case *: : s = ; case *:\\ : s = ; if $(s) = $(<) NotFile $(s) ; else if $(s:G=) Depends $(<) : $(s) ; MkDir $(s) ; rule Object MakeLocate $(<) : $(LOCATE_TARGET) ; HDRS on $(<) = $(SEARCH_SOURCE) $(SUBDIRHDRS) $(HDRS) ; HDRRULE on $(>) = HdrRule ; HDRSCAN on $(>) = $(HDRPATTERN) ; HDRSEARCH on $(>) = $(SEARCH_SOURCE:E) $(SUBDIRHDRS) $(HDRS) $(STDHDRS) ; HDRGRIST on $(>) = $(HDRGRIST) ; DEFINES on $(<) += $(DEFINES) ; switch $(>:S) case .asm : As $(<) : $(>) ; case .c : Cc $(<) : $(>) ; case .C : C++ $(<) : $(>) ; case .cc : C++ $(<) : $(>) ; case .cpp : C++ $(<) : $(>) ; case .f : Fortran $(<) : $(>) ; case .l : Cc $(<) : $(<:S=.c) ; Lex $(<:S=.c) : $(>) ; case .s : As $(<) : $(>) ; case .y : Cc $(<) : $(<:S=$(YACCGEN)) ; Yacc $(<:S=$(YACCGEN)) : $(>) ; case * : UserObject $(<) : $(>) ; rule ObjectCcFlags CCFLAGS on [ FGristFiles $(<:S=$(SUFOBJ)) ] += $(>) ; rule ObjectC++Flags C++FLAGS on [ FGristFiles $(<:S=$(SUFOBJ)) ] += $(>) ; rule ObjectDefines local s = [ FGristFiles $(<:S=$(SUFOBJ)) ] ; DEFINES on $(s) += $(>) ; CCDEFS on $(s) = [ on $(s) FDefines $(DEFINES) ] ; rule ObjectHdrs HDRS on $(s) += $(>) ; CCHDRS on $(s) = [ on $(s) FIncludes $(HDRS) ] ; rule Objects local _i ; for _i in [ FGristFiles $(<) ] Object $(_i:S=$(SUFOBJ)) : $(_i) ; Depends obj : $(_i:S=$(SUFOBJ)) ; rule RmTemps Temporary $(>) ; rule Setuid MODE on [ FAppendSuffix $(<) : $(SUFEXE) ] = 4711 ; rule Shell Depends shell : $(<) ; MODE on $(<) = $(SHELLMODE) ; rule SoftLink rule SubDir local _top = $(<[1]) ; local _tokens = $(<[2-]) ; if ! $(_top) Exit SubDir syntax error ; if ! $($(_top)-SET) $(_top)-SET = true ; if $($(_top)) $(_top)-UP = ; $(_top)-DOWN = ; $(_top)-ROOT = $($(_top)) ; _tokens = [ FReverse $(_tokens) ] ; SUBDIR_DOWN = [ FReverse $(SUBDIR_DOWN) ] ; FStripCommon _tokens : SUBDIR_DOWN ; if $(SUBDIR_DOWN) && $(_tokens) Echo Warning: SubDir $(<) misplaced! ; $(_top)-UP = $(SUBDIR_UP) $(_tokens) ; $(_top)-DOWN = $(SUBDIR_DOWN) ; $(_top)-ROOT = $(SUBDIR_ROOT:E="") ; $(_top) = [ FSubDirPath $(_top) ] ; SUBDIR_UP = $($(_top)-UP) ; SUBDIR_DOWN = ; SUBDIR_ROOT = $($(_top)-ROOT) ; if $($(_top)RULES) { include $($(_top)RULES) ; } else { NoCare $(JAMRULES:R=$($(_top)):G=$(_top)) ; include $(JAMRULES:R=$($(_top)):G=$(_top)) ; SUBDIR_DOWN = $($(_top)-DOWN) $(_tokens) ; SUBDIR_TOKENS = $(SUBDIR_DOWN) ; SUBDIR = [ FSubDirPath $(<) ] ; SEARCH_SOURCE = $(SUBDIR) ; LOCATE_SOURCE = $(ALL_LOCATE_TARGET) $(SUBDIR) ; LOCATE_TARGET = $(ALL_LOCATE_TARGET) $(SUBDIR) ; SOURCE_GRIST = [ FGrist $(SUBDIR_TOKENS) ] ; SUBDIR$(SUBDIRRESET) = ; $(SUBDIRRULES) $(<) ; rule FSubDirPath local _r = [ FRelPath $($(<[1])-UP) : $($(<[1])-DOWN) $(<[2-]) ] ; return $(_r:R=$($(<[1])-ROOT)) ; rule SubDirCcFlags SUBDIRCCFLAGS += $(<) ; rule SubDirC++Flags SUBDIRC++FLAGS += $(<) ; rule SubDirHdrs SUBDIRHDRS += [ FDirName $(<) ] ; rule SubInclude if ! $($(<[1])) Exit SubInclude $(<[1]) without prior SubDir $(<[1]) ; SubDir $(<) ; include $(JAMFILE:D=$(SUBDIR)) ; rule SubRules Exit SubRules $(<[1]) without prior SubDir $(<[1]) ; SubDir $(>) ; rule Undefines UNDEFS on [ FAppendSuffix $(<) : $(SUFEXE) ] += $(UNDEFFLAG)$(>) ; rule UserObject Exit "Unknown suffix on" $(>) "- see UserObject rule in Jamfile(5)." ; rule Yacc local _h ; _h = $(<:BS=.h) ; MakeLocate $(<) $(_h) : $(LOCATE_SOURCE) ; if $(YACC) Depends $(<) $(_h) : $(>) ; Yacc1 $(<) $(_h) : $(>) ; YaccMv $(<) $(_h) : $(>) ; Clean clean : $(<) $(_h) ; Includes $(<) : $(_h) ; rule FGrist return $(<:J=!) ; rule FGristFiles return $(<:G=$(SOURCE_GRIST:E)) ; rule FGristSourceFiles if ! $(SOURCE_GRIST) return $(<) ; else local _i _o ; for _i in $(<) switch $(_i) case *.h : _o += $(_i) ; case * : _o += $(_i:G=$(SOURCE_GRIST)) ; return $(_o) ; rule FReverse if $(1) { return [ FReverse $(1[2-]) ] $(1[1]) ; } rule FSubDir if ! $(<[1]) return $(DOT) ; } local _i _d ; _d = $(DOTDOT) ; for _i in $(<[2-]) _d = $(_d:R=$(DOTDOT)) ; return $(_d) ; rule FStripCommon if $($(<)[1]) && $($(<)[1]) = $($(>)[1]) $(<) = $($(<)[2-]) ; $(>) = $($(>)[2-]) ; FStripCommon $(<) : $(>) ; rule FRelPath local _l _r ; _l = $(<) ; _r = $(>) ; FStripCommon _l : _r ; _l = [ FSubDir $(_l) ] ; _r = [ FDirName $(_r) ] ; if $(_r) = $(DOT) { return $(_l) ; } else { return $(_r:R=$(_l)) ; rule FAppendSuffix if $(_i:S) _o += $(_i) ; _o += $(_i:S=$(>)) ; rule FQuote { return \\\"$(<)\\\" ; } rule FDefines { return -D$(<) ; } rule FIncludes { return -I$(<) ; } rule FDirName local _s = $(DOT) ; _s = $(_i:R=$(_s)) ; return $(_s) ; if $(OS2) rule FQuote { return \"$(<)\" ; } rule FIncludes { return /I$(<) ; } else if $(NT) rule FDefines { return /D$(<) ; } rule FDefines { return "-define '$(<)'" ; } rule FIncludes { return \"$(<:J=,)\" ; } rule FQuote { return \"\"\"$(<)\"\"\" ; } rule FDefines { return "/define=( $(<:J=,) )" ; } rule FIncludes { return "/inc=( $(<:J=,) )" ; } local _s _i ; if ! $(<) _s = $(DOT) ; switch $(<[1]) case *:* : _s = $(<[1]) ; case \\[*\\] : _s = $(<[1]) ; case * : _s = [.$(<[1])] ; for _i in [.$(<[2-])] actions updated together piecemeal Archive $(AR) $(<) $(>) actions As $(AS) $(ASFLAGS) $(ASHDRS) -o $(<) $(>) actions C++ $(C++) -c -o $(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) $(>) actions Cc $(CC) -c -o $(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>) actions Chgrp $(CHGRP) $(GROUP) $(<) actions Chmod1 $(CHMOD) $(MODE) $(<) actions Chown $(CHOWN) $(OWNER) $(<) actions piecemeal together existing Clean $(RM) $(>) actions File $(CP) $(>) $(<) actions GenFile1 $(>[1]) $(<) $(>[2-]) actions Fortran $(FORTRAN) $(FORTRANFLAGS) -o $(<) $(>) actions HardLink $(RM) $(<) && $(LN) $(>) $(<) actions Install $(CP) $(>) $(<) actions Lex $(LEX) $(>) actions LexMv $(MV) lex.yy.c $(<) actions Link bind NEEDLIBS $(LINK) $(LINKFLAGS) -o $(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS) actions MkDir1 $(MKDIR) $(<) actions together Ranlib $(RANLIB) $(<) actions quietly updated piecemeal together RmTemps actions Shell $(AWK) ' NR == 1 { print "$(SHELLHEADER)" } NR == 1 && /^[#:]/ { next } /^##/ { next } { print } ' < $(>) > $(<) actions SoftLink $(RM) $(<) && $(LN) -s $(>) $(<) actions Yacc1 $(YACC) $(YACCFLAGS) $(>) actions YaccMv $(MV) $(YACCFILES).c $(<[1]) $(MV) $(YACCFILES).h $(<[2]) $(C++) -c $(C++FLAGS) $(CCDEFS) $(CCHDRS) $(>) $(CC) -c $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>) actions ignore CcMv [ $(<) != $(>:BS=$(SUFOBJ)) ] && $(MV) $(>:BS=$(SUFOBJ)) $(<) if $(NOARUPDATE) actions Archive if $(UNIX) PATH="$PATH:." if $(NT) && $(MSVCNT) if exist $(<) set _$(<:B)_=$(<) $(AR) /out:$(<) %_$(<:B)_% $(>) $(AS) /Ml /p /v /w2 $(>) $(<) ,nul,nul; $(CC) /c /Fo$(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) /I$(STDHDRS) $(>) $(C++) /c /Fo$(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) /I$(STDHDRS) /Tp$(>) $(LINK) $(LINKFLAGS) /out:$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS) else if $(NT) && $(MSVC) $(AR) $(<) -+$(>) $(CC) /c /Fo$(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>) $(C++) /c /Fo$(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) /Tp$(>) else if $(NT) && $(BCCROOT) $(LINK) -e$(<) $(LINKFLAGS) $(UNDEFS) -L$(LINKLIBS) $(NEEDLIBS) $(>) $(C++) -c -o$(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) $(>) $(CC) -c -o$(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>) else if $(OS2) && $(WATCOM) actions together piecemeal Archive $(AR) $(<) +-$(>) $(CC) /Fo=$(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>) $(C++) /Fo=$(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) $(>) $(LINK) $(LINKFLAGS) /Fe=$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS) actions updated together piecemeal Archive lib/replace $(<) $(>[1]) ,$(>[2-]) $(CC)/obj=$(<) $(CCFLAGS) $(CCDEFS) $(CCHDRS) $(>) $(C++)/obj=$(<) $(C++FLAGS) $(CCDEFS) $(CCHDRS) $(>) $(RM) $(>[1]);* ,$(>[2-]);* actions together quietly CreLib if f$search("$(<)") .eqs. "" then lib/create $(<) mcr $(>[1]) $(<) $(>[2-]) $(LINK)/exe=$(<) $(LINKFLAGS) $(>:J=,) ,$(NEEDLIBS)/lib ,$(LINKLIBS) actions together Archive $(LINK) -library -o $(<) $(>) set -e MWCincludes $(CCHDRS) $(CC) -o $(<) $(CCFLAGS) $(CCDEFS) $(>) $(CC) -o $(<) $(C++FLAGS) $(CCDEFS) $(>) $(LINK) -o $(<) $(LINKFLAGS) $(>) $(NEEDLIBS) "$(LINKLIBS)" if $(WIN98) actions existing Clean del $(>) rule BULK { Bulk $(<) : $(>) ; } rule FILE { File $(<) : $(>) ; } rule HDRRULE { HdrRule $(<) : $(>) ; } rule INSTALL { Install $(<) : $(>) ; } rule LIBRARY { Library $(<) : $(>) ; } rule LIBS { LinkLibraries $(<) : $(>) ; } rule LINK { Link $(<) : $(>) ; } rule MAIN { Main $(<) : $(>) ; } rule SETUID { Setuid $(<) ; } rule SHELL { Shell $(<) : $(>) ; } rule UNDEFINES { Undefines $(<) : $(>) ; } rule INSTALLBIN { InstallBin $(BINDIR) : $(<) ; } rule INSTALLLIB { InstallLib $(LIBDIR) : $(<) ; } rule INSTALLMAN { InstallMan $(MANDIR) : $(<) ; } rule addDirName { $(<) += [ FDirName $(>) ] ; } rule makeCommon { FStripCommon $(<) : $(>) ; } rule _makeCommon { FStripCommon $(<) : $(>) ; } rule makeDirName { $(<) = [ FDirName $(>) ] ; } rule makeGrist { $(<) = [ FGrist $(>) ] ; } rule makeGristedName { $(<) = [ FGristSourceFiles $(>) ] ; } rule makeRelPath { $(<[1]) = [ FRelPath $(<[2-]) : $(>) ] ; } rule makeString { $(<) = $(>:J) ; } rule makeSubDir { $(<) = [ FSubDir $(>) ] ; } rule makeSuffixed { $(<[1]) = [ FAppendSuffix $(>) : $(<[2]) ] ; } include $(JAMFILE) ;  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($                                  | x t p l h d ` \ X T P L H D @ < 8 4 0 , ( $                                          | x t p l h d ` \ X T P L H D @ < 8 4 0 , ( $                                          | x t p l h d ` \ X T P L H D @ < 8 4 0 , ( $                                          | x t p l h d ` \ X T P L H D @ < 8 4 0 , ( $                                          | x t p l h d ` \ X T P L H D @ < 8 4 0 , ( $          |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  |xtplhd`\XTPLHD@<840,($  _jambase