The Machine Perception Toolbox

[Introduction]- [News]- [Download]- [Screenshots]- [Manual (pdf)]- [Forums]- [API Reference]- [Repository ]

 

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

jambase.c

Go to the documentation of this file.
00001 /* Generated by mkjambase from Jambase */
00002 char *jambase[] = {
00003 /* Jambase */
00004 "if $(NT)\n",
00005 "{\n",
00006 "SLASH ?= \\\\ ;\n",
00007 "}\n",
00008 "SLASH ?= / ;\n",
00009 "rule find-to-root ( dir : patterns + )\n",
00010 "{\n",
00011 "local globs = [ GLOB $(dir) : $(patterns) ] ;\n",
00012 "while ! $(globs) && $(dir:P) != $(dir)\n",
00013 "{\n",
00014 "dir = $(dir:P) ;\n",
00015 "globs = [ GLOB $(dir) : $(patterns) ] ;\n",
00016 "}\n",
00017 "return $(globs) ;\n",
00018 "}\n",
00019 ".boost-build-file = ;\n",
00020 ".bootstrap-file = ;\n",
00021 "BOOST_BUILD_PATH.user-value = $(BOOST_BUILD_PATH) ;\n",
00022 "rule boost-build ( dir ? )\n",
00023 "{\n",
00024 "if $(.bootstrap-file)\n",
00025 "{\n",
00026 "EXIT \"Error: Illegal attempt to re-bootstrap the build system by invoking\" ;\n",
00027 "ECHO ;\n",
00028 "ECHO \"   'boost-build\" $(dir) \";'\" ;\n",
00029 "ECHO ;\n",
00030 "EXIT \"Please consult the documentation at 'http://www.boost.org'.\" ;\n",
00031 "}\n",
00032 "BOOST_BUILD_PATH = $(dir:R=$(.boost-build-file:D)) $(BOOST_BUILD_PATH) ;\n",
00033 "local bootstrap-file =\n",
00034 "[ GLOB $(BOOST_BUILD_PATH) : bootstrap.jam ] ;\n",
00035 ".bootstrap-file = $(bootstrap-file[1]) ;\n",
00036 "if ! $(.bootstrap-file)\n",
00037 "{\n",
00038 "ECHO \"Unable to load Boost.Build: could not find build system.\" ;\n",
00039 "ECHO --------------------------------------------------------- ;\n",
00040 "ECHO \"$(.boost-build-file) attempted to load the build system by invoking\" ;\n",
00041 "ECHO ;\n",
00042 "ECHO \"   'boost-build\" $(dir) \";'\" ;\n",
00043 "ECHO ;\n",
00044 "ECHO \"but we were unable to find \\\"bootstrap.jam\\\" in the specified directory\" ;\n",
00045 "ECHO \"or in BOOST_BUILD_PATH (searching \"$(BOOST_BUILD_PATH:J=\", \")\").\" ;\n",
00046 "ECHO ;\n",
00047 "EXIT \"Please consult the documentation at 'http://www.boost.org'.\" ;\n",
00048 "}\n",
00049 "include $(.bootstrap-file) ;\n",
00050 "}\n",
00051 "if [ MATCH .*(bjam).* : $(ARGV[1]:BL) ]\n",
00052 "|| $(BOOST_ROOT)    # A temporary measure so Jam works with Boost.Build v1\n",
00053 "{\n",
00054 "local search-path = $(BOOST_BUILD_PATH) $(BOOST_ROOT) ;\n",
00055 "local boost-build-files =\n",
00056 "[ find-to-root [ PWD ] : boost-build.jam ]\n",
00057 "[ GLOB $(search-path) : boost-build.jam ] ;\n",
00058 ".boost-build-file = $(boost-build-files[1]) ;\n",
00059 "if ! $(.boost-build-file)\n",
00060 "{\n",
00061 "ECHO \"Unable to load Boost.Build: could not find \\\"boost-build.jam\\\"\" ;\n",
00062 "ECHO --------------------------------------------------------------- ;\n",
00063 "if ! [ MATCH .*(bjam).* : $(ARGV[1]:BL) ]\n",
00064 "{\n",
00065 "ECHO \"BOOST_ROOT must be set, either in the environment, or \" ;\n",
00066 "ECHO \"on the command-line with -sBOOST_ROOT=..., to the root\" ;\n",
00067 "ECHO \"of the boost installation.\" ;\n",
00068 "ECHO ;\n",
00069 "}\n",
00070 "ECHO \"Attempted search from\" [ PWD ] \"up to the root\" ;\n",
00071 "ECHO \"and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: \"$(search-path:J=\", \")\".\" ;\n",
00072 "EXIT \"Please consult the documentation at 'http://www.boost.org'.\" ;\n",
00073 "}\n",
00074 "include $(.boost-build-file) ;\n",
00075 "if ! $(.bootstrap-file)\n",
00076 "{\n",
00077 "ECHO \"Unable to load Boost.Build\" ;\n",
00078 "ECHO -------------------------- ;\n",
00079 "ECHO \"\\\"$(.boost-build-file)\\\" was found by searching from\" [ PWD ] \"up to the root\" ;\n",
00080 "ECHO \"and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: \"$(search-path:J=\", \")\".\" ;\n",
00081 "ECHO ;\n",
00082 "ECHO \"However, it failed to call the \\\"boost-build\\\" rule to indicate\" ;\n",
00083 "ECHO \"the location of the build system.\" ;\n",
00084 "ECHO ;\n",
00085 "EXIT \"Please consult the documentation at 'http://www.boost.org'.\" ;\n",
00086 "}\n",
00087 "}\n",
00088 "else\n",
00089 "{\n",
00090 "if $(NT)\n",
00091 "{\n",
00092 "local SUPPORTED_TOOLSETS = \"BORLANDC\" \"VC7\" \"VISUALC\" \"VISUALC16\" \"INTELC\" \"WATCOM\"\n",
00093 "\"MINGW\" \"LCC\" ;\n",
00094 "TOOLSET = \"\" ;\n",
00095 "if $(JAM_TOOLSET)\n",
00096 "{\n",
00097 "local t ;\n",
00098 "for t in $(SUPPORTED_TOOLSETS)\n",
00099 "{\n",
00100 "$(t) = $($(t):J=\" \") ; # reconstitute paths with spaces in them\n",
00101 "if $(t) = $(JAM_TOOLSET) { TOOLSET = $(t) ; }\n",
00102 "}\n",
00103 "if ! $(TOOLSET)\n",
00104 "{\n",
00105 "ECHO  \"The JAM_TOOLSET environment variable is defined but its value\" ;\n",
00106 "ECHO  \"is invalid, please use one of the following:\" ;\n",
00107 "ECHO  ;\n",
00108 "for t in $(SUPPORTED_TOOLSETS) { ECHO \"  \" $(t) ; }\n",
00109 "EXIT ;\n",
00110 "}\n",
00111 "}\n",
00112 "if ! $(TOOLSET)\n",
00113 "{\n",
00114 "if $(BCCROOT)\n",
00115 "{\n",
00116 "TOOLSET  = BORLANDC ;\n",
00117 "BORLANDC = $(BCCROOT:J=\" \") ;\n",
00118 "}\n",
00119 "else if $(MSVC)\n",
00120 "{\n",
00121 "TOOLSET   = VISUALC16 ;\n",
00122 "VISUALC16 = $(MSVC:J=\" \") ;\n",
00123 "}\n",
00124 "else if $(MSVCNT)\n",
00125 "{\n",
00126 "TOOLSET = VISUALC ;\n",
00127 "VISUALC = $(MSVCNT:J=\" \") ;\n",
00128 "}\n",
00129 "else if $(MSVCDir)\n",
00130 "{\n",
00131 "TOOLSET = VISUALC ;\n",
00132 "VISUALC = $(MSVCDir:J=\" \") ;\n",
00133 "}\n",
00134 "else if $(MINGW)\n",
00135 "{\n",
00136 "TOOLSET = MINGW ;\n",
00137 "}\n",
00138 "else\n",
00139 "{\n",
00140 "ECHO  \"Jam cannot be run because, either:\" ;\n",
00141 "ECHO  \"   a. You didn't set BOOST_ROOT to indicate the root of your\" ;\n",
00142 "ECHO  \"      Boost installation.\" ;\n",
00143 "ECHO  \"   b. You are trying to use stock Jam but didn't indicate which\" ;\n",
00144 "ECHO  \"      compilation toolset to use. To do so, follow these simple\" ;\n",
00145 "ECHO  \"      instructions:\" ;\n",
00146 "ECHO  ;\n",
00147 "ECHO  \"  - define one of the following environment variable, with the\" ;\n",
00148 "ECHO  \"    appropriate value according to this list:\" ;\n",
00149 "ECHO  ;\n",
00150 "ECHO  \"   Variable    Toolset                      Description\" ;\n",
00151 "ECHO  ;\n",
00152 "ECHO  \"   BORLANDC    Borland C++                  BC++ install path\" ;\n",
00153 "ECHO  \"   VISUALC     Microsoft Visual C++         VC++ install path\" ;\n",
00154 "ECHO  \"   VISUALC16   Microsoft Visual C++ 16 bit  VC++ 16 bit install\" ;\n",
00155 "ECHO  \"   INTELC      Intel C/C++                  IC++ install path\" ;\n",
00156 "ECHO  \"   WATCOM      Watcom C/C++                 Watcom install path\" ;\n",
00157 "ECHO  \"   MINGW       MinGW (gcc)                  MinGW install path\" ;\n",
00158 "ECHO  \"   LCC         Win32-LCC                    LCC-Win32 install path\" ;\n",
00159 "ECHO  ;\n",
00160 "ECHO  \"  - define the JAM_TOOLSET environment variable with the *name*\" ;\n",
00161 "ECHO  \"    of the toolset variable you want to use.\" ;\n",
00162 "ECHO  ;\n",
00163 "ECHO  \"  e.g.:  set VISUALC=C:\\\\Visual6\" ;\n",
00164 "ECHO  \"         set JAM_TOOLSET=VISUALC\" ;\n",
00165 "EXIT  ;\n",
00166 "}\n",
00167 "}\n",
00168 "CP          ?= copy ;\n",
00169 "RM          ?= del /f/q ;\n",
00170 "SLASH       ?= \\\\ ;\n",
00171 "SUFLIB      ?= .lib ;\n",
00172 "SUFOBJ      ?= .obj ;\n",
00173 "SUFEXE      ?= .exe ;\n",
00174 "if $(TOOLSET) = BORLANDC\n",
00175 "{\n",
00176 "ECHO \"Compiler is Borland C++\" ;\n",
00177 "AR          ?= tlib /C /P64 ;\n",
00178 "CC          ?= bcc32 ;\n",
00179 "CCFLAGS     ?= -q -y -d -v -w-par -w-ccc -w-rch -w-pro -w-aus ;\n",
00180 "C++         ?= bcc32 ;\n",
00181 "C++FLAGS    ?= -q -y -d -v -w-par -w-ccc -w-rch -w-pro -w-aus -P ;\n",
00182 "LINK        ?= $(CC) ;\n",
00183 "LINKFLAGS   ?= $(CCFLAGS) ;\n",
00184 "STDLIBPATH  ?= $(BORLANDC)\\\\lib ;\n",
00185 "STDHDRS     ?= $(BORLANDC)\\\\include ;\n",
00186 "NOARSCAN    ?= true ;\n",
00187 "}\n",
00188 "else if $(TOOLSET) = VISUALC16\n",
00189 "{\n",
00190 "ECHO \"Compiler is Microsoft Visual C++ 16 bit\" ;\n",
00191 "AR          ?= lib /nologo ;\n",
00192 "CC          ?= cl /nologo ;\n",
00193 "CCFLAGS     ?= /D \\\"WIN\\\" ;\n",
00194 "C++         ?= $(CC) ;\n",
00195 "C++FLAGS    ?= $(CCFLAGS) ;\n",
00196 "LINK        ?= $(CC) ;\n",
00197 "LINKFLAGS   ?= $(CCFLAGS) ;\n",
00198 "LINKLIBS    ?= \n",
00199 "\\\"$(VISUALC16)\\\\lib\\\\mlibce.lib\\\"\n",
00200 "\\\"$(VISUALC16)\\\\lib\\\\oldnames.lib\\\"\n",
00201 ";\n",
00202 "LINKLIBS    ?= ;\n",
00203 "NOARSCAN    ?= true ;\n",
00204 "OPTIM       ?= \"\" ;\n",
00205 "STDHDRS     ?= $(VISUALC16)\\\\include ;\n",
00206 "UNDEFFLAG   ?= \"/u _\" ;\n",
00207 "}\n",
00208 "else if $(TOOLSET) = VISUALC\n",
00209 "{\n",
00210 "ECHO \"Compiler is Microsoft Visual C++\" ;\n",
00211 "AR          ?= lib ;\n",
00212 "AS          ?= masm386 ;\n",
00213 "CC          ?= cl /nologo ;\n",
00214 "CCFLAGS     ?= \"\" ;\n",
00215 "C++         ?= $(CC) ;\n",
00216 "C++FLAGS    ?= $(CCFLAGS) ;\n",
00217 "LINK        ?= link /nologo ;\n",
00218 "LINKFLAGS   ?= \"\" ;\n",
00219 "LINKLIBS    ?= \\\"$(VISUALC)\\\\lib\\\\advapi32.lib\\\"\n",
00220 "\\\"$(VISUALC)\\\\lib\\\\gdi32.lib\\\"\n",
00221 "\\\"$(VISUALC)\\\\lib\\\\user32.lib\\\"\n",
00222 "\\\"$(VISUALC)\\\\lib\\\\kernel32.lib\\\" ;\n",
00223 "OPTIM       ?= \"\" ;\n",
00224 "STDHDRS     ?= $(VISUALC)\\\\include ;\n",
00225 "UNDEFFLAG   ?= \"/u _\" ;\n",
00226 "}\n",
00227 "else if $(TOOLSET) = VC7\n",
00228 "{\n",
00229 "ECHO \"Compiler is Microsoft Visual C++ .NET\" ;\n",
00230 "AR          ?= lib ;\n",
00231 "AS          ?= masm386 ;\n",
00232 "CC          ?= cl /nologo ;\n",
00233 "CCFLAGS     ?= \"\" ;\n",
00234 "C++         ?= $(CC) ;\n",
00235 "C++FLAGS    ?= $(CCFLAGS) ;\n",
00236 "LINK        ?= link /nologo ;\n",
00237 "LINKFLAGS   ?= \"\" ;\n",
00238 "LINKLIBS    ?= \\\"$(VISUALC)\\\\PlatformSDK\\\\lib\\\\advapi32.lib\\\"\n",
00239 "\\\"$(VISUALC)\\\\PlatformSDK\\\\lib\\\\gdi32.lib\\\"\n",
00240 "\\\"$(VISUALC)\\\\PlatformSDK\\\\lib\\\\user32.lib\\\"\n",
00241 "\\\"$(VISUALC)\\\\PlatformSDK\\\\lib\\\\kernel32.lib\\\" ;\n",
00242 "OPTIM       ?= \"\" ;\n",
00243 "STDHDRS     ?= \\\"$(VISUALC)\\\\include\\\"\n",
00244 "\\\"$(VISUALC)\\\\PlatformSDK\\\\include\\\" ;\n",
00245 "UNDEFFLAG   ?= \"/u _\" ;\n",
00246 "}\n",
00247 "else if $(TOOLSET) = INTELC\n",
00248 "{\n",
00249 "ECHO \"Compiler is Intel C/C++\" ;\n",
00250 "if ! $(VISUALC)\n",
00251 "{\n",
00252 "ECHO \"As a special exception, when using the Intel C++ compiler, you need\" ;\n",
00253 "ECHO \"to define the VISUALC environment variable to indicate the location\" ;\n",
00254 "ECHO \"of your Visual C++ installation. Aborting..\" ;\n",
00255 "EXIT ;\n",
00256 "}\n",
00257 "AR          ?= lib ;\n",
00258 "AS          ?= masm386 ;\n",
00259 "CC          ?= icl /nologo ;\n",
00260 "CCFLAGS     ?= \"\" ;\n",
00261 "C++         ?= $(CC) ;\n",
00262 "C++FLAGS    ?= $(CCFLAGS) ;\n",
00263 "LINK        ?= link /nologo ;\n",
00264 "LINKFLAGS   ?= \"\" ;\n",
00265 "LINKLIBS    ?= $(VISUALC)\\\\lib\\\\advapi32.lib\n",
00266 "$(VISUALC)\\\\lib\\\\kernel32.lib\n",
00267 ";\n",
00268 "OPTIM       ?= \"\" ;\n",
00269 "STDHDRS     ?= $(INTELC)\\include $(VISUALC)\\\\include ;\n",
00270 "UNDEFFLAG   ?= \"/u _\" ;\n",
00271 "}\n",
00272 "else if $(TOOLSET) = WATCOM\n",
00273 "{\n",
00274 "ECHO \"Compiler is Watcom C/C++\" ;\n",
00275 "AR          ?= wlib ;\n",
00276 "CC          ?= wcc386 ;\n",
00277 "CCFLAGS     ?= /zq /DWIN32 /I$(WATCOM)\\\\h ; # zq=quiet\n",
00278 "C++         ?= wpp386 ;\n",
00279 "C++FLAGS    ?= $(CCFLAGS) ;\n",
00280 "CP          ?= copy ;\n",
00281 "DOT         ?= . ;\n",
00282 "DOTDOT      ?= .. ;\n",
00283 "LINK        ?= wcl386 ;\n",
00284 "LINKFLAGS   ?= /zq ; # zq=quiet\n",
00285 "LINKLIBS    ?= ;\n",
00286 "MV          ?= move ;\n",
00287 "NOARSCAN    ?= true ;\n",
00288 "OPTIM       ?= ;\n",
00289 "RM          ?= del /f ;\n",
00290 "SLASH       ?= \\\\ ;\n",
00291 "STDHDRS     ?= $(WATCOM)\\\\h $(WATCOM)\\\\h\\\\nt ;\n",
00292 "SUFEXE      ?= .exe ;\n",
00293 "SUFLIB      ?= .lib ;\n",
00294 "SUFOBJ      ?= .obj ;\n",
00295 "UNDEFFLAG   ?= \"/u _\" ;\n",
00296 "}\n",
00297 "else if $(TOOLSET) = MINGW\n",
00298 "{\n",
00299 "ECHO \"Compiler is GCC with Mingw\" ;\n",
00300 "AR              ?= ar -ru ;\n",
00301 "CC              ?= gcc ;\n",
00302 "CCFLAGS         ?= \"\" ;\n",
00303 "C++             ?= $(CC) ;\n",
00304 "C++FLAGS        ?= $(CCFLAGS) ;\n",
00305 "LINK            ?= $(CC) ;\n",
00306 "LINKFLAGS       ?= \"\" ;\n",
00307 "LINKLIBS        ?= \"\" ;\n",
00308 "OPTIM           ?= ;\n",
00309 "SUFOBJ           = .o ;\n",
00310 "SUFLIB           = .a ;\n",
00311 "SLASH            = / ;\n",
00312 "}\n",
00313 "else if $(TOOLSET) = LCC\n",
00314 "{\n",
00315 "ECHO \"Compiler is Win32-LCC\" ;\n",
00316 "AR              ?= lcclib ;\n",
00317 "CC              ?= lcc ;\n",
00318 "CCFLAGS         ?= \"\" ;\n",
00319 "C++             ?= $(CC) ;\n",
00320 "C++FLAGS        ?= $(CCFLAGS) ;\n",
00321 "LINK            ?= lcclnk ;\n",
00322 "LINKFLAGS       ?= \"\" ;\n",
00323 "LINKLIBS        ?= \"\" ;\n",
00324 "OPTIM           ?= ;\n",
00325 "NOARSCAN         = true ;\n",
00326 "}\n",
00327 "else\n",
00328 "{\n",
00329 "EXIT On NT, set BCCROOT, MSVCNT, MINGW or MSVC to the root of the\n",
00330 "Borland or Microsoft directories. ;\n",
00331 "}\n",
00332 "}\n",
00333 "else if $(OS2)\n",
00334 "{\n",
00335 "local SUPPORTED_TOOLSETS = \"EMX\" \"WATCOM\" ;\n",
00336 "TOOLSET = \"\" ;\n",
00337 "if $(JAM_TOOLSET)\n",
00338 "{\n",
00339 "local t ;\n",
00340 "for t in $(SUPPORTED_TOOLSETS)\n",
00341 "{\n",
00342 "$(t) = $($(t):J=\" \") ; # reconstitute paths with spaces in them\n",
00343 "if $(t) = $(JAM_TOOLSET) { TOOLSET = $(t) ; }\n",
00344 "}\n",
00345 "if ! $(TOOLSET)\n",
00346 "{\n",
00347 "ECHO  \"The JAM_TOOLSET environment variable is defined but its value\" ;\n",
00348 "ECHO  \"is invalid, please use one of the following:\" ;\n",
00349 "ECHO  ;\n",
00350 "for t in $(SUPPORTED_TOOLSETS) { ECHO \"  \" $(t) ; }\n",
00351 "EXIT ;\n",
00352 "}\n",
00353 "}\n",
00354 "if ! $(TOOLSET)\n",
00355 "{\n",
00356 "if $(watcom)\n",
00357 "{\n",
00358 "WATCOM   = $(watcom:J=\" \") ;\n",
00359 "TOOLSET  = WATCOM ;\n",
00360 "}\n",
00361 "else\n",
00362 "{\n",
00363 "ECHO  \"Jam cannot be run because you didn't indicate which compilation toolset\" ;\n",
00364 "ECHO  \"to use. To do so, follow these simple instructions:\" ;\n",
00365 "ECHO  ;\n",
00366 "ECHO  \"  - define one of the following environment variable, with the\" ;\n",
00367 "ECHO  \"    appropriate value according to this list:\" ;\n",
00368 "ECHO  ;\n",
00369 "ECHO  \"   Variable    Toolset                      Description\" ;\n",
00370 "ECHO  ;\n",
00371 "ECHO  \"   WATCOM      Watcom C/C++                 Watcom install path\" ;\n",
00372 "ECHO  \"   EMX         EMX (gcc)                    EMX install path\" ;\n",
00373 "ECHO  \"   VISUALAGE   IBM Visual Age C/C++         VisualAge install path\" ;\n",
00374 "ECHO  ;\n",
00375 "ECHO  \"  - define the JAM_TOOLSET environment variable with the *name*\" ;\n",
00376 "ECHO  \"    of the toolset variable you want to use.\" ;\n",
00377 "ECHO  ;\n",
00378 "ECHO  \"  e.g.:  set WATCOM=C:\\WATCOM\" ;\n",
00379 "ECHO  \"         set JAM_TOOLSET=WATCOM\" ;\n",
00380 "ECHO  ;\n",
00381 "EXIT  ;\n",
00382 "}\n",
00383 "}\n",
00384 "RM       = del /f ;\n",
00385 "CP       = copy ;\n",
00386 "MV      ?= move ;\n",
00387 "DOT     ?= . ;\n",
00388 "DOTDOT  ?= .. ;\n",
00389 "SUFLIB  ?= .lib ;\n",
00390 "SUFOBJ  ?= .obj ;\n",
00391 "SUFEXE  ?= .exe ;\n",
00392 "if $(TOOLSET) = WATCOM\n",
00393 "{\n",
00394 "AR           ?= wlib ;\n",
00395 "BINDIR       ?= \\\\os2\\\\apps ;\n",
00396 "CC           ?= wcc386 ;\n",
00397 "CCFLAGS      ?= /zq /DOS2 /I$(WATCOM)\\\\h ; # zq=quiet\n",
00398 "C++          ?= wpp386 ;\n",
00399 "C++FLAGS     ?= $(CCFLAGS) ;\n",
00400 "LINK         ?= wcl386 ;\n",
00401 "LINKFLAGS    ?= /zq ; # zq=quiet\n",
00402 "LINKLIBS     ?= ;\n",
00403 "NOARSCAN     ?= true ;\n",
00404 "OPTIM        ?= ;\n",
00405 "SLASH        ?= \\\\ ;\n",
00406 "STDHDRS      ?= $(WATCOM)\\\\h ;\n",
00407 "UNDEFFLAG    ?= \"/u _\" ;\n",
00408 "}\n",
00409 "else if $(TOOLSET) = EMX\n",
00410 "{\n",
00411 "ECHO \"Compiler is GCC-EMX\" ;\n",
00412 "AR            ?= ar -ru ;\n",
00413 "CC            ?= gcc ;\n",
00414 "CCFLAGS       ?= \"\" ;\n",
00415 "C++           ?= $(CC) ;\n",
00416 "C++FLAGS      ?= $(CCFLAGS) ;\n",
00417 "LINK          ?= $(CC) ;\n",
00418 "LINKFLAGS     ?= \"\" ;\n",
00419 "LINKLIBS      ?= \"\" ;\n",
00420 "OPTIM         ?= ;\n",
00421 "SUFOBJ         = .o ;\n",
00422 "SUFLIB         = .a ;\n",
00423 "UNDEFFLAG     ?= \"-U\" ;\n",
00424 "SLASH          = / ;\n",
00425 "}\n",
00426 "else\n",
00427 "{\n",
00428 "EXIT  \"Sorry, but the $(JAM_TOOLSET) toolset isn't supported for now\" ;\n",
00429 "}\n",
00430 "}\n",
00431 "else if $(VMS)\n",
00432 "{\n",
00433 "C++         ?= cxx ;\n",
00434 "C++FLAGS    ?= ;\n",
00435 "CC          ?= cc ;\n",
00436 "CCFLAGS     ?= ;\n",
00437 "CHMOD       ?= set file/prot= ;\n",
00438 "CP          ?= copy/replace ;\n",
00439 "CRELIB      ?= true ;\n",
00440 "DOT         ?= [] ;\n",
00441 "DOTDOT      ?= [-] ;\n",
00442 "EXEMODE     ?= (w:e) ;\n",
00443 "FILEMODE    ?= (w:r) ;\n",
00444 "HDRS        ?= ;\n",
00445 "LINK        ?= link ;\n",
00446 "LINKFLAGS   ?= \"\" ;\n",
00447 "LINKLIBS    ?= ;\n",
00448 "MKDIR       ?= create/dir ;\n",
00449 "MV          ?= rename ;\n",
00450 "OPTIM       ?= \"\" ;\n",
00451 "RM          ?= delete ;\n",
00452 "RUNVMS      ?= mcr ;\n",
00453 "SHELLMODE   ?= (w:er) ;\n",
00454 "SLASH       ?= . ;\n",
00455 "STDHDRS     ?= decc$library_include ;\n",
00456 "SUFEXE      ?= .exe ;\n",
00457 "SUFLIB      ?= .olb ;\n",
00458 "SUFOBJ      ?= .obj ;\n",
00459 "switch $(OS) \n",
00460 "{\n",
00461 "case OPENVMS : CCFLAGS  ?= /stand=vaxc ;\n",
00462 "case VMS     : LINKLIBS ?= sys$library:vaxcrtl.olb/lib ;\n",
00463 "}\n",
00464 "}\n",
00465 "else if $(MAC)\n",
00466 "{\n",
00467 "local OPT ;\n",
00468 "CW  ?= \"{CW}\" ;\n",
00469 "MACHDRS ?=\n",
00470 "\"$(UMACHDRS):Universal:Interfaces:CIncludes\"\n",
00471 "\"$(CW):MSL:MSL_C:MSL_Common:Include\"\n",
00472 "\"$(CW):MSL:MSL_C:MSL_MacOS:Include\" ;\n",
00473 "MACLIBS ?=\n",
00474 "\"$(CW):MacOS Support:Universal:Libraries:StubLibraries:Interfacelib\"\n",
00475 "\"$(CW):MacOS Support:Universal:Libraries:StubLibraries:Mathlib\" ;\n",
00476 "MPWLIBS ?= \n",
00477 "\"$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL MPWCRuntime.lib\"\n",
00478 "\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC MPW.Lib\" ;\n",
00479 "MPWNLLIBS ?= \n",
00480 "\"$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL MPWCRuntime.lib\"\n",
00481 "\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC MPW(NL).Lib\" ;\n",
00482 "SIOUXHDRS ?= ;\n",
00483 "SIOUXLIBS ?= \n",
00484 "\"$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL RuntimePPC.lib\"\n",
00485 "\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL SIOUX.PPC.Lib\" \n",
00486 "\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC.Lib\" ;\n",
00487 "C++         ?= mwcppc ;\n",
00488 "C++FLAGS    ?= -w off -nomapcr ;\n",
00489 "CC          ?= mwcppc ;\n",
00490 "CCFLAGS     ?= -w off -nomapcr ;\n",
00491 "CP          ?= duplicate -y ;\n",
00492 "DOT         ?= \":\" ;\n",
00493 "DOTDOT      ?= \"::\" ;\n",
00494 "HDRS        ?= $(MACHDRS) $(MPWHDRS) ;\n",
00495 "LINK        ?= mwlinkppc ;\n",
00496 "LINKFLAGS   ?= -mpwtool -warn ;             \n",
00497 "LINKLIBS    ?= $(MACLIBS) $(MPWLIBS) ;              \n",
00498 "MKDIR       ?= newfolder ;\n",
00499 "MV          ?= rename -y ;\n",
00500 "NOARSCAN    ?= true ;\n",
00501 "OPTIM       ?= ;\n",
00502 "RM          ?= delete -y ;\n",
00503 "SLASH       ?= \":\" ;\n",
00504 "STDHDRS     ?= ; \n",
00505 "SUFLIB      ?= .lib ;\n",
00506 "SUFOBJ      ?= .o ;\n",
00507 "}\n",
00508 "else if $(OS) = BEOS && $(METROWERKS)\n",
00509 "{\n",
00510 "AR          ?= mwld -xml -o ;\n",
00511 "BINDIR      ?= /boot/apps ;\n",
00512 "CC          ?= mwcc ;\n",
00513 "CCFLAGS     ?= -nosyspath ;\n",
00514 "C++         ?= $(CC) ;\n",
00515 "C++FLAGS    ?= -nosyspath ;\n",
00516 "FORTRAN     ?= \"\" ;\n",
00517 "LIBDIR      ?= /boot/develop/libraries ;\n",
00518 "LINK        ?= mwld ;\n",
00519 "LINKFLAGS   ?= \"\" ;\n",
00520 "MANDIR      ?= /boot/documentation/\"Shell Tools\"/HTML ;\n",
00521 "NOARSCAN    ?= true ;\n",
00522 "STDHDRS     ?= /boot/develop/headers/posix ;\n",
00523 "}\n",
00524 "else if $(OS) = BEOS \n",
00525 "{\n",
00526 "BINDIR      ?= /boot/apps ;\n",
00527 "CC          ?= gcc ;\n",
00528 "C++         ?= $(CC) ;\n",
00529 "FORTRAN     ?= \"\" ;\n",
00530 "LIBDIR      ?= /boot/develop/libraries ;\n",
00531 "LINK        ?= gcc ;\n",
00532 "LINKLIBS    ?= -lnet ;\n",
00533 "NOARSCAN    ?= true ;\n",
00534 "STDHDRS     ?= /boot/develop/headers/posix ;\n",
00535 "}\n",
00536 "else if $(UNIX)\n",
00537 "{\n",
00538 "switch $(OS)\n",
00539 "{\n",
00540 "case AIX :\n",
00541 "LINKLIBS    ?= -lbsd ;\n",
00542 "case AMIGA :\n",
00543 "CC          ?= gcc ;\n",
00544 "YACC        ?= \"bison -y\" ;\n",
00545 "case CYGWIN :   \n",
00546 "CC          ?= gcc ;\n",
00547 "CCFLAGS     += -D__cygwin__ ;\n",
00548 "LEX         ?= flex ;\n",
00549 "RANLIB      ?= \"\" ;\n",
00550 "SUFEXE      ?= .exe ;\n",
00551 "YACC        ?= \"bison -y\" ;\n",
00552 "case DGUX :\n",
00553 "RANLIB      ?= \"\" ;\n",
00554 "RELOCATE    ?= true ;\n",
00555 "case HPUX :\n",
00556 "YACC        = ;\n",
00557 "CFLAGS      += -Ae ;\n",
00558 "CCFLAGS     += -Ae ;\n",
00559 "RANLIB      ?= \"\" ;\n",
00560 "case INTERIX :\n",
00561 "CC          ?= gcc ;\n",
00562 "RANLIB      ?= \"\" ;\n",
00563 "case IRIX :\n",
00564 "RANLIB      ?= \"\" ;\n",
00565 "case MPEIX :\n",
00566 "CC          ?= gcc ;\n",
00567 "C++         ?= gcc ;\n",
00568 "CCFLAGS     += -D_POSIX_SOURCE ;\n",
00569 "HDRS        += /usr/include ;\n",
00570 "RANLIB      ?= \"\" ; \n",
00571 "NOARSCAN    ?= true ;\n",
00572 "NOARUPDATE  ?= true ;\n",
00573 "case MVS :\n",
00574 "RANLIB      ?= \"\" ; \n",
00575 "case NEXT :\n",
00576 "AR          ?= libtool -o ;\n",
00577 "RANLIB      ?= \"\" ;\n",
00578 "case MACOSX :\n",
00579 "AR          ?= libtool -o ;\n",
00580 "C++         ?= c++ ;\n",
00581 "MANDIR      ?= /usr/local/share/man ;\n",
00582 "RANLIB      ?= \"\" ;\n",
00583 "case NCR :\n",
00584 "RANLIB      ?= \"\" ;\n",
00585 "case PTX :\n",
00586 "RANLIB      ?= \"\" ;\n",
00587 "case QNX :\n",
00588 "AR          ?= wlib ;\n",
00589 "CC          ?= cc ;\n",
00590 "CCFLAGS     ?= -Q ; # quiet\n",
00591 "C++         ?= $(CC) ;\n",
00592 "C++FLAGS    ?= -Q ; # quiet\n",
00593 "LINK        ?= $(CC) ;\n",
00594 "LINKFLAGS   ?= -Q ; # quiet\n",
00595 "NOARSCAN    ?= true ;\n",
00596 "RANLIB      ?= \"\" ;\n",
00597 "case SCO :\n",
00598 "RANLIB      ?= \"\" ;\n",
00599 "RELOCATE    ?= true ;\n",
00600 "case SINIX :\n",
00601 "RANLIB      ?= \"\" ;\n",
00602 "case SOLARIS :\n",
00603 "RANLIB      ?= \"\" ;\n",
00604 "AR          ?= \"/usr/ccs/bin/ar ru\" ;\n",
00605 "case UNICOS :\n",
00606 "NOARSCAN    ?= true ;\n",
00607 "OPTIM       ?= -O0 ;\n",
00608 "case UNIXWARE :\n",
00609 "RANLIB      ?= \"\" ;\n",
00610 "RELOCATE    ?= true ;\n",
00611 "}\n",
00612 "CCFLAGS     ?= ;\n",
00613 "C++FLAGS    ?= $(CCFLAGS) ;\n",
00614 "CHMOD       ?= chmod ;\n",
00615 "CHGRP       ?= chgrp ;\n",
00616 "CHOWN       ?= chown ;\n",
00617 "LEX         ?= lex ;\n",
00618 "LINKFLAGS   ?= $(CCFLAGS) ;\n",
00619 "LINKLIBS    ?= ;\n",
00620 "OPTIM       ?= -O ;\n",
00621 "RANLIB      ?= ranlib ;\n",
00622 "YACC        ?= yacc ;\n",
00623 "YACCFILES   ?= y.tab ;\n",
00624 "YACCFLAGS   ?= -d ;\n",
00625 "}\n",
00626 "AR          ?= ar ru ;\n",
00627 "AS          ?= as ;\n",
00628 "ASFLAGS     ?= ;\n",
00629 "AWK         ?= awk ;\n",
00630 "BINDIR      ?= /usr/local/bin ;\n",
00631 "C++         ?= cc ;\n",
00632 "C++FLAGS    ?= ;\n",
00633 "CC          ?= cc ;\n",
00634 "CCFLAGS     ?= ;\n",
00635 "CP          ?= cp -f ;\n",
00636 "CRELIB      ?= ;\n",
00637 "DOT         ?= . ;\n",
00638 "DOTDOT      ?= .. ;\n",
00639 "EXEMODE     ?= 711 ;\n",
00640 "FILEMODE    ?= 644 ;\n",
00641 "FORTRAN     ?= f77 ;\n",
00642 "FORTRANFLAGS ?= ;\n",
00643 "HDRS        ?= ;\n",
00644 "INSTALLGRIST ?= installed ;\n",
00645 "JAMFILE     ?= Jamfile ;\n",
00646 "JAMRULES    ?= Jamrules ;\n",
00647 "LEX         ?= ;\n",
00648 "LIBDIR      ?= /usr/local/lib ;\n",
00649 "LINK        ?= $(CC) ;\n",
00650 "LINKFLAGS   ?= ;\n",
00651 "LINKLIBS    ?= ;\n",
00652 "LN          ?= ln ;\n",
00653 "MANDIR      ?= /usr/local/man ;\n",
00654 "MKDIR       ?= mkdir ;\n",
00655 "MV          ?= mv -f ;\n",
00656 "OPTIM       ?= ;\n",
00657 "RCP         ?= rcp ;\n",
00658 "RM          ?= rm -f ;\n",
00659 "RSH         ?= rsh ;\n",
00660 "SED         ?= sed ;\n",
00661 "SHELLHEADER ?= \"#!/bin/sh\" ;\n",
00662 "SHELLMODE   ?= 755 ;\n",
00663 "SLASH       ?= / ;\n",
00664 "STDHDRS     ?= /usr/include ;\n",
00665 "SUFEXE      ?= \"\" ;\n",
00666 "SUFLIB      ?= .a ;\n",
00667 "SUFOBJ      ?= .o ;\n",
00668 "UNDEFFLAG   ?= \"-u _\" ;\n",
00669 "YACC        ?= ;\n",
00670 "YACCFILES   ?= ;\n",
00671 "YACCFLAGS   ?= ;\n",
00672 "HDRPATTERN = \n",
00673 "\"^[     ]*#[    ]*include[  ]*[<\\\"]([^\\\">]*)[\\\">].*$\" ;\n",
00674 "OSFULL = $(OS)$(OSVER)$(OSPLAT) $(OS)$(OSPLAT) $(OS)$(OSVER) $(OS) ;\n",
00675 "DEPENDS all : shell files lib exe obj ;\n",
00676 "DEPENDS all shell files lib exe obj : first ;\n",
00677 "NOTFILE all first shell files lib exe obj dirs clean uninstall ;\n",
00678 "ALWAYS clean uninstall ;\n",
00679 "rule As\n",
00680 "{\n",
00681 "DEPENDS $(<) : $(>) ;\n",
00682 "ASFLAGS on $(<) += $(ASFLAGS) $(SUBDIRASFLAGS) ;\n",
00683 "}\n",
00684 "rule Bulk\n",
00685 "{\n",
00686 "local i ;\n",
00687 "for i in $(>)\n",
00688 "{\n",
00689 "File $(i:D=$(<)) : $(i) ;\n",
00690 "}\n",
00691 "}\n",
00692 "rule Cc\n",
00693 "{\n",
00694 "local _h ;\n",
00695 "DEPENDS $(<) : $(>) ;\n",
00696 "CCFLAGS on $(<) += $(CCFLAGS) $(SUBDIRCCFLAGS) ;\n",
00697 "if $(RELOCATE)\n",
00698 "{\n",
00699 "CcMv $(<) : $(>) ;\n",
00700 "}\n",
00701 "_h = $(SEARCH_SOURCE) $(HDRS) $(SUBDIRHDRS) ;\n",
00702 "if $(VMS) && $(_h)\n",
00703 "{\n",
00704 "SLASHINC on $(<) = \"/inc=(\" $(_h[1]) ,$(_h[2-]) \")\" ;\n",
00705 "}\n",
00706 "else if $(MAC) && $(_h)\n",
00707 "{\n",
00708 "local _i _j ;\n",
00709 "_j = $(_h[1]) ;\n",
00710 "for _i in $(_h[2-])\n",
00711 "{\n",
00712 "_j = $(_j),$(_i) ;\n",
00713 "}\n",
00714 "MACINC on $(<) = \\\"$(_j)\\\" ;\n",
00715 "}\n",
00716 "}\n",
00717 "rule C++\n",
00718 "{\n",
00719 "local _h ;\n",
00720 "DEPENDS $(<) : $(>) ;\n",
00721 "C++FLAGS on $(<) += $(C++FLAGS) $(SUBDIRC++FLAGS) ;\n",
00722 "if $(RELOCATE)\n",
00723 "{\n",
00724 "CcMv $(<) : $(>) ;\n",
00725 "}\n",
00726 "_h = $(SEARCH_SOURCE) $(HDRS) $(SUBDIRHDRS) ;\n",
00727 "if $(VMS) && $(_h)\n",
00728 "{\n",
00729 "SLASHINC on $(<) = \"/inc=(\" $(_h[1]) ,$(_h[2-]) \")\" ;\n",
00730 "}\n",
00731 "else if $(MAC) && $(_h)\n",
00732 "{\n",
00733 "local _i _j ;\n",
00734 "_j = $(_h[1]) ;\n",
00735 "for _i in $(_h[2-])\n",
00736 "{\n",
00737 "_j = $(_j),$(_i) ;\n",
00738 "}\n",
00739 "MACINC on $(<) = \\\"$(_j)\\\" ;\n",
00740 "}\n",
00741 "}\n",
00742 "rule Chmod\n",
00743 "{\n",
00744 "if $(CHMOD) { Chmod1 $(<) ; }\n",
00745 "}\n",
00746 "rule File\n",
00747 "{\n",
00748 "DEPENDS files : $(<) ;\n",
00749 "DEPENDS $(<) : $(>) ;\n",
00750 "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n",
00751 "MODE on $(<) = $(FILEMODE) ;\n",
00752 "Chmod $(<) ;\n",
00753 "}\n",
00754 "rule Fortran\n",
00755 "{\n",
00756 "DEPENDS $(<) : $(>) ;\n",
00757 "}\n",
00758 "rule GenFile \n",
00759 "{\n",
00760 "local _t = [ FGristSourceFiles $(<) ] ;\n",
00761 "local _s = [ FAppendSuffix $(>[1]) : $(SUFEXE) ] ;\n",
00762 "Depends $(_t) : $(_s) $(>[2-]) ;\n",
00763 "GenFile1 $(_t) : $(_s) $(>[2-]) ;\n",
00764 "Clean clean : $(_t) ;\n",
00765 "}\n",
00766 "rule GenFile1\n",
00767 "{\n",
00768 "MakeLocate $(<) : $(LOCATE_SOURCE) ;\n",
00769 "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n",
00770 "}\n",
00771 "rule HardLink\n",
00772 "{\n",
00773 "DEPENDS files : $(<) ;\n",
00774 "DEPENDS $(<) : $(>) ;\n",
00775 "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n",
00776 "}\n",
00777 "rule HdrMacroFile\n",
00778 "{\n",
00779 "HDRMACRO $(<) ;\n",
00780 "}\n",
00781 "rule HdrRule\n",
00782 "{\n",
00783 "local s ;\n",
00784 "if $(HDRGRIST) \n",
00785 "{ \n",
00786 "s = $(>:G=$(HDRGRIST)) ;\n",
00787 "} else { \n",
00788 "s = $(>) ; \n",
00789 "}\n",
00790 "INCLUDES $(<) : $(s) ;\n",
00791 "SEARCH on $(s) = $(HDRSEARCH) ;\n",
00792 "NOCARE $(s) ;\n",
00793 "HDRSEARCH on $(s) = $(HDRSEARCH) ;\n",
00794 "HDRSCAN on $(s) = $(HDRSCAN) ;\n",
00795 "HDRRULE on $(s) = $(HDRRULE) ;\n",
00796 "HDRGRIST on $(s) = $(HDRGRIST) ;\n",
00797 "}\n",
00798 "rule InstallInto\n",
00799 "{\n",
00800 "local i t ;\n",
00801 "t = $(>:G=$(INSTALLGRIST)) ;\n",
00802 "Depends install : $(t) ;\n",
00803 "Clean uninstall : $(t) ;\n",
00804 "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n",
00805 "MakeLocate $(t) : $(<) ;\n",
00806 "for i in $(>)\n",
00807 "{\n",
00808 "local tt = $(i:G=$(INSTALLGRIST)) ;\n",
00809 "Depends $(tt) : $(i) ;\n",
00810 "Install $(tt) : $(i) ;\n",
00811 "Chmod $(tt) ;\n",
00812 "if $(OWNER) && $(CHOWN) \n",
00813 "{ \n",
00814 "Chown $(tt) ;\n",
00815 "OWNER on $(tt) = $(OWNER) ;\n",
00816 "}\n",
00817 "if $(GROUP) && $(CHGRP) \n",
00818 "{ \n",
00819 "Chgrp $(tt) ;\n",
00820 "GROUP on $(tt) = $(GROUP) ;\n",
00821 "}\n",
00822 "}\n",
00823 "}\n",
00824 "rule InstallBin\n",
00825 "{\n",
00826 "local _t = [ FAppendSuffix $(>) : $(SUFEXE) ] ;\n",
00827 "InstallInto $(<) : $(_t) ;\n",
00828 "MODE on $(_t:G=installed) = $(EXEMODE) ;\n",
00829 "}\n",
00830 "rule InstallFile\n",
00831 "{\n",
00832 "InstallInto $(<) : $(>) ;\n",
00833 "MODE on $(>:G=installed) = $(FILEMODE) ;\n",
00834 "}\n",
00835 "rule InstallLib\n",
00836 "{\n",
00837 "InstallInto $(<) : $(>) ;\n",
00838 "MODE on $(>:G=installed) = $(FILEMODE) ;\n",
00839 "}\n",
00840 "rule InstallMan\n",
00841 "{\n",
00842 "local i s d ;\n",
00843 "for i in $(>)\n",
00844 "{\n",
00845 "switch $(i:S)\n",
00846 "{\n",
00847 "case .1 : s = 1 ; case .2 : s = 2 ; case .3 : s = 3 ;\n",
00848 "case .4 : s = 4 ; case .5 : s = 5 ; case .6 : s = 6 ;\n",
00849 "case .7 : s = 7 ; case .8 : s = 8 ; case .l : s = l ;\n",
00850 "case .n : s = n ; case .man : s = 1 ;\n",
00851 "}\n",
00852 "d = man$(s) ;\n",
00853 "InstallInto $(d:R=$(<)) : $(i) ;\n",
00854 "}\n",
00855 "MODE on $(>:G=installed) = $(FILEMODE) ;\n",
00856 "}\n",
00857 "rule InstallShell\n",
00858 "{\n",
00859 "InstallInto $(<) : $(>) ;\n",
00860 "MODE on $(>:G=installed) = $(SHELLMODE) ;\n",
00861 "}\n",
00862 "rule Lex\n",
00863 "{\n",
00864 "LexMv $(<) : $(>) ;\n",
00865 "DEPENDS $(<) : $(>) ;\n",
00866 "MakeLocate $(<) : $(LOCATE_SOURCE) ;\n",
00867 "Clean clean : $(<) ;\n",
00868 "}\n",
00869 "rule Library\n",
00870 "{\n",
00871 "LibraryFromObjects $(<) : $(>:S=$(SUFOBJ)) ;\n",
00872 "Objects $(>) ;\n",
00873 "}\n",
00874 "rule LibraryFromObjects\n",
00875 "{\n",
00876 "local _i _l _s ;\n",
00877 "_s = [ FGristFiles $(>) ] ;\n",
00878 "_l = $(<:S=$(SUFLIB)) ;\n",
00879 "if $(KEEPOBJS)\n",
00880 "{\n",
00881 "DEPENDS obj : $(_s) ;\n",
00882 "}\n",
00883 "else\n",
00884 "{\n",
00885 "DEPENDS lib : $(_l) ;\n",
00886 "}\n",
00887 "if ! $(_l:D)\n",
00888 "{\n",
00889 "MakeLocate $(_l) $(_l)($(_s:BS)) : $(LOCATE_TARGET) ;\n",
00890 "}\n",
00891 "if $(NOARSCAN) \n",
00892 "{ \n",
00893 "DEPENDS $(_l) : $(_s) ;\n",
00894 "}\n",
00895 "else\n",
00896 "{\n",
00897 "DEPENDS $(_l) : $(_l)($(_s:BS)) ;\n",
00898 "for _i in $(_s)\n",
00899 "{\n",
00900 "DEPENDS $(_l)($(_i:BS)) : $(_i) ;\n",
00901 "}\n",
00902 "}\n",
00903 "Clean clean : $(_l) ;\n",
00904 "if $(CRELIB) { CreLib $(_l) : $(_s[1]) ; }\n",
00905 "Archive $(_l) : $(_s) ;\n",
00906 "if $(RANLIB) { Ranlib $(_l) ; }\n",
00907 "if ! ( $(NOARSCAN) || $(KEEPOBJS) ) { RmTemps $(_l) : $(_s) ; }\n",
00908 "}\n",
00909 "rule Link\n",
00910 "{\n",
00911 "MODE on $(<) = $(EXEMODE) ;\n",
00912 "Chmod $(<) ;\n",
00913 "}\n",
00914 "rule LinkLibraries\n",
00915 "{\n",
00916 "local _t = [ FAppendSuffix $(<) : $(SUFEXE) ] ;\n",
00917 "DEPENDS $(_t) : $(>:S=$(SUFLIB)) ;\n",
00918 "NEEDLIBS on $(_t) += $(>:S=$(SUFLIB)) ;\n",
00919 "}\n",
00920 "rule Main\n",
00921 "{\n",
00922 "MainFromObjects $(<) : $(>:S=$(SUFOBJ)) ;\n",
00923 "Objects $(>) ;\n",
00924 "}\n",
00925 "rule MainFromObjects\n",
00926 "{\n",
00927 "local _s _t ;\n",
00928 "_s = [ FGristFiles $(>) ] ;\n",
00929 "_t = [ FAppendSuffix $(<) : $(SUFEXE) ] ;\n",
00930 "if $(_t) != $(<)\n",
00931 "{\n",
00932 "DEPENDS $(<) : $(_t) ;\n",
00933 "NOTFILE $(<) ;\n",
00934 "}\n",
00935 "DEPENDS exe : $(_t) ;\n",
00936 "DEPENDS $(_t) : $(_s) ;\n",
00937 "MakeLocate $(_t) : $(LOCATE_TARGET) ;\n",
00938 "Clean clean : $(_t) ;\n",
00939 "Link $(_t) : $(_s) ;\n",
00940 "}\n",
00941 "rule MakeLocate\n",
00942 "{\n",
00943 "if $(>)\n",
00944 "{\n",
00945 "LOCATE on $(<) = $(>) ;\n",
00946 "Depends $(<) : $(>[1]) ;\n",
00947 "MkDir $(>[1]) ;\n",
00948 "}\n",
00949 "}\n",
00950 "rule MkDir\n",
00951 "{\n",
00952 "NOUPDATE $(<) ;\n",
00953 "if $(<) != $(DOT) && ! $($(<)-mkdir) \n",
00954 "{\n",
00955 "local s ;\n",
00956 "$(<)-mkdir = true ;\n",
00957 "MkDir1 $(<) ;\n",
00958 "Depends dirs : $(<) ;\n",
00959 "s = $(<:P) ;\n",
00960 "if $(NT)\n",
00961 "{\n",
00962 "switch $(s)\n",
00963 "{\n",
00964 "case *:   : s = ;\n",
00965 "case *:\\\\ : s = ;\n",
00966 "}\n",
00967 "}\n",
00968 "if $(s) && $(s) != $(<)\n",
00969 "{\n",
00970 "Depends $(<) : $(s) ;\n",
00971 "MkDir $(s) ;\n",
00972 "}\n",
00973 "else if $(s)\n",
00974 "{\n",
00975 "NOTFILE $(s) ;\n",
00976 "}\n",
00977 "}\n",
00978 "}\n",
00979 "rule Object\n",
00980 "{\n",
00981 "local h ;\n",
00982 "Clean clean : $(<) ;\n",
00983 "MakeLocate $(<) : $(LOCATE_TARGET) ;\n",
00984 "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n",
00985 "HDRS on $(<) = $(SEARCH_SOURCE) $(HDRS) $(SUBDIRHDRS) ;\n",
00986 "if $(SEARCH_SOURCE)\n",
00987 "{\n",
00988 "h = $(SEARCH_SOURCE) ;\n",
00989 "}\n",
00990 "else\n",
00991 "{\n",
00992 "h = \"\" ;\n",
00993 "}\n",
00994 "HDRRULE on $(>) = HdrRule ;\n",
00995 "HDRSCAN on $(>) = $(HDRPATTERN) ;\n",
00996 "HDRSEARCH on $(>) = $(HDRS) $(SUBDIRHDRS) $(h) $(STDHDRS) ;\n",
00997 "HDRGRIST on $(>) = $(HDRGRIST) ;\n",
00998 "switch $(>:S)\n",
00999 "{\n",
01000 "case .asm : As $(<) : $(>) ;\n",
01001 "case .c :   Cc $(<) : $(>) ;\n",
01002 "case .C :   C++ $(<) : $(>) ;\n",
01003 "case .cc :  C++ $(<) : $(>) ;\n",
01004 "case .cpp : C++ $(<) : $(>) ;\n",
01005 "case .f :   Fortran $(<) : $(>) ;\n",
01006 "case .l :   Cc $(<) : $(<:S=.c) ;\n",
01007 "Lex $(<:S=.c) : $(>) ;\n",
01008 "case .s :   As $(<) : $(>) ;\n",
01009 "case .y :   Cc $(<) : $(<:S=.c) ;\n",
01010 "Yacc $(<:S=.c) : $(>) ;\n",
01011 "case * :    UserObject $(<) : $(>) ;\n",
01012 "}\n",
01013 "}\n",
01014 "rule ObjectCcFlags\n",
01015 "{\n",
01016 "CCFLAGS on [ FGristFiles $(<:S=$(SUFOBJ)) ] += $(>) ;\n",
01017 "}\n",
01018 "rule ObjectC++Flags\n",
01019 "{\n",
01020 "C++FLAGS on [ FGristFiles $(<:S=$(SUFOBJ)) ] += $(>) ;\n",
01021 "}\n",
01022 "rule ObjectHdrs\n",
01023 "{\n",
01024 "HDRS on [ FGristFiles $(<:S=$(SUFOBJ)) ] += $(>) ;\n",
01025 "}\n",
01026 "rule Objects\n",
01027 "{\n",
01028 "local _i ;\n",
01029 "for _i in [ FGristFiles $(<) ]\n",
01030 "{\n",
01031 "Object $(_i:S=$(SUFOBJ)) : $(_i) ;\n",
01032 "DEPENDS obj : $(_i:S=$(SUFOBJ)) ;\n",
01033 "}\n",
01034 "}\n",
01035 "rule RmTemps\n",
01036 "{\n",
01037 "TEMPORARY $(>) ;\n",
01038 "}\n",
01039 "rule Setuid\n",
01040 "{\n",
01041 "MODE on [ FAppendSuffix $(<) : $(SUFEXE) ] = 4711 ;\n",
01042 "}\n",
01043 "rule Shell\n",
01044 "{\n",
01045 "DEPENDS shell : $(<) ;\n",
01046 "DEPENDS $(<) : $(>) ;\n",
01047 "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n",
01048 "MODE on $(<) = $(SHELLMODE) ;\n",
01049 "Clean clean : $(<) ;\n",
01050 "Chmod $(<) ;\n",
01051 "}\n",
01052 "rule SubDir\n",
01053 "{\n",
01054 "local _r _s ;\n",
01055 "if ! $($(<[1]))\n",
01056 "{\n",
01057 "if ! $(<[1])\n",
01058 "{\n",
01059 "EXIT SubDir syntax error ;\n",
01060 "}\n",
01061 "$(<[1]) = [ FSubDir $(<[2-]) ] ;\n",
01062 "}\n",
01063 "if ! $($(<[1])-included)\n",
01064 "{\n",
01065 "$(<[1])-included = TRUE ;\n",
01066 "_r = $($(<[1])RULES) ;\n",
01067 "if ! $(_r)\n",
01068 "{\n",
01069 "_r = $(JAMRULES:R=$($(<[1]))) ;\n",
01070 "}\n",
01071 "include $(_r) ;\n",
01072 "}\n",
01073 "_s = [ FDirName $(<[2-]) ] ;\n",
01074 "SUBDIR = $(_s:R=$($(<[1]))) ;\n",
01075 "SUBDIR_TOKENS = $(<[2-]) ;\n",
01076 "SEARCH_SOURCE = $(SUBDIR) ;\n",
01077 "LOCATE_SOURCE = $(ALL_LOCATE_TARGET) $(SUBDIR) ;\n",
01078 "LOCATE_TARGET = $(ALL_LOCATE_TARGET) $(SUBDIR) ;\n",
01079 "SOURCE_GRIST = [ FGrist $(<[2-]) ] ;\n",
01080 "SUBDIRCCFLAGS = ;\n",
01081 "SUBDIRC++FLAGS = ;\n",
01082 "SUBDIRHDRS = ;\n",
01083 "}\n",
01084 "rule SubDirCcFlags\n",
01085 "{\n",
01086 "SUBDIRCCFLAGS += $(<) ;\n",
01087 "}\n",
01088 "rule SubDirC++Flags\n",
01089 "{\n",
01090 "SUBDIRC++FLAGS += $(<) ;\n",
01091 "}\n",
01092 "rule SubDirHdrs\n",
01093 "{\n",
01094 "SUBDIRHDRS += $(<) ;\n",
01095 "}\n",
01096 "rule SubInclude\n",
01097 "{\n",
01098 "local _s ;\n",
01099 "if ! $($(<[1]))\n",
01100 "{\n",
01101 "EXIT Top level of source tree has not been set with $(<[1]) ;\n",
01102 "}\n",
01103 "_s = [ FDirName $(<[2-]) ] ;\n",
01104 "include $(JAMFILE:D=$(_s):R=$($(<[1]))) ;\n",
01105 "}\n",
01106 "rule Undefines\n",
01107 "{\n",
01108 "UNDEFS on [ FAppendSuffix $(<) : $(SUFEXE) ] += $(UNDEFFLAG)$(>) ;\n",
01109 "}\n",
01110 "rule UserObject\n",
01111 "{\n",
01112 "EXIT \"Unknown suffix on\" $(>) \"- see UserObject rule in Jamfile(5).\" ;\n",
01113 "}\n",
01114 "rule Yacc\n",
01115 "{\n",
01116 "local _h ;\n",
01117 "_h = $(<:BS=.h) ;\n",
01118 "MakeLocate $(<) $(_h) : $(LOCATE_SOURCE) ;\n",
01119 "if $(YACC)\n",
01120 "{\n",
01121 "DEPENDS $(<) $(_h) : $(>) ;\n",
01122 "Yacc1 $(<) $(_h) : $(>) ;\n",
01123 "YaccMv $(<) $(_h) : $(>) ;\n",
01124 "Clean clean : $(<) $(_h) ;\n",
01125 "}\n",
01126 "INCLUDES $(<) : $(_h) ;\n",
01127 "}\n",
01128 "rule FGrist\n",
01129 "{\n",
01130 "local _g _i ;\n",
01131 "_g = $(<[1]) ;\n",
01132 "for _i in $(<[2-])\n",
01133 "{\n",
01134 "_g = $(_g)!$(_i) ;\n",
01135 "}\n",
01136 "return $(_g) ;\n",
01137 "}\n",
01138 "rule FGristFiles \n",
01139 "{\n",
01140 "if ! $(SOURCE_GRIST)\n",
01141 "{\n",
01142 "return $(<) ;\n",
01143 "}\n",
01144 "else \n",
01145 "{\n",
01146 "return $(<:G=$(SOURCE_GRIST)) ;\n",
01147 "}\n",
01148 "}\n",
01149 "rule FGristSourceFiles\n",
01150 "{\n",
01151 "if ! $(SOURCE_GRIST)\n",
01152 "{\n",
01153 "return $(<) ;\n",
01154 "}\n",
01155 "else \n",
01156 "{\n",
01157 "local _i _o ;\n",
01158 "for _i in $(<)\n",
01159 "{\n",
01160 "switch $(_i)\n",
01161 "{\n",
01162 "case *.h :  _o += $(_i) ;\n",
01163 "case * :    _o += $(_i:G=$(SOURCE_GRIST)) ;\n",
01164 "}\n",
01165 "}\n",
01166 "return $(_o) ;\n",
01167 "}\n",
01168 "}\n",
01169 "rule FConcat\n",
01170 "{\n",
01171 "local _t _r ;\n",
01172 "$(_r) = $(<[1]) ;\n",
01173 "for _t in $(<[2-])\n",
01174 "{\n",
01175 "$(_r) = $(_r)$(_t) ;\n",
01176 "}\n",
01177 "return $(_r) ;\n",
01178 "}\n",
01179 "rule FSubDir\n",
01180 "{\n",
01181 "local _i _d ;\n",
01182 "if ! $(<[1]) \n",
01183 "{\n",
01184 "_d = $(DOT) ;\n",
01185 "} \n",
01186 "else\n",
01187 "{\n",
01188 "_d = $(DOTDOT) ;\n",
01189 "for _i in $(<[2-])\n",
01190 "{\n",
01191 "_d = $(_d:R=$(DOTDOT)) ;\n",
01192 "}\n",
01193 "}\n",
01194 "return $(_d) ;\n",
01195 "}\n",
01196 "rule FDirName\n",
01197 "{\n",
01198 "local _s _i ;\n",
01199 "if ! $(<)\n",
01200 "{\n",
01201 "_s = $(DOT) ;\n",
01202 "}\n",
01203 "else if $(VMS)\n",
01204 "{\n",
01205 "switch $(<[1])\n",
01206 "{\n",
01207 "case *:* : _s = $(<[1]) ;\n",
01208 "case \\\\[*\\\\] : _s = $(<[1]) ;\n",
01209 "case * : _s = [.$(<[1])] ;\n",
01210 "}\n",
01211 "for _i in [.$(<[2-])]\n",
01212 "{\n",
01213 "_s = $(_i:R=$(_s)) ;\n",
01214 "}\n",
01215 "}\n",
01216 "else if $(MAC)\n",
01217 "{\n",
01218 "_s = $(DOT) ;\n",
01219 "for _i in $(<)\n",
01220 "{\n",
01221 "_s = $(_i:R=$(_s)) ;\n",
01222 "}\n",
01223 "}\n",
01224 "else\n",
01225 "{\n",
01226 "_s = $(<[1]) ; \n",
01227 "for _i in $(<[2-])\n",
01228 "{\n",
01229 "_s = $(_i:R=$(_s)) ;\n",
01230 "}\n",
01231 "}\n",
01232 "return $(_s) ;\n",
01233 "}\n",
01234 "rule _makeCommon\n",
01235 "{\n",
01236 "if $($(<)[1]) && $($(<)[1]) = $($(>)[1])\n",
01237 "{\n",
01238 "$(<) = $($(<)[2-]) ;\n",
01239 "$(>) = $($(>)[2-]) ;\n",
01240 "_makeCommon $(<) : $(>) ;\n",
01241 "}\n",
01242 "}\n",
01243 "rule FRelPath\n",
01244 "{\n",
01245 "local _l _r ;\n",
01246 "_l = $(<) ;\n",
01247 "_r = $(>) ;\n",
01248 "_makeCommon _l : _r ;\n",
01249 "_l = [ FSubDir $(_l) ] ;\n",
01250 "_r = [ FDirName $(_r) ] ;\n",
01251 "if $(_r) = $(DOT) {\n",
01252 "return $(_l) ;\n",
01253 "} else {\n",
01254 "return $(_r:R=$(_l)) ;\n",
01255 "}\n",
01256 "}\n",
01257 "rule FAppendSuffix\n",
01258 "{\n",
01259 "if $(>)\n",
01260 "{\n",
01261 "local _i _o ;\n",
01262 "for _i in $(<)\n",
01263 "{\n",
01264 "if $(_i:S)\n",
01265 "{\n",
01266 "_o += $(_i) ;\n",
01267 "}\n",
01268 "else\n",
01269 "{\n",
01270 "_o += $(_i:S=$(>)) ;\n",
01271 "}\n",
01272 "}\n",
01273 "return $(_o) ;\n",
01274 "}\n",
01275 "else\n",
01276 "{\n",
01277 "return $(<) ;\n",
01278 "}\n",
01279 "}\n",
01280 "rule unmakeDir\n",
01281 "{\n",
01282 "if $(>[1]:D) && $(>[1]:D) != $(>[1]) && $(>[1]:D) != \\\\\\\\ \n",
01283 "{\n",
01284 "unmakeDir $(<) : $(>[1]:D) $(>[1]:BS) $(>[2-]) ;\n",
01285 "}\n",
01286 "else\n",
01287 "{\n",
01288 "$(<) = $(>) ;\n",
01289 "}\n",
01290 "}\n",
01291 "rule FConvertToSlashes\n",
01292 "{\n",
01293 "local _d, _s, _i ;\n",
01294 "unmakeDir _d : $(<) ;\n",
01295 "_s = $(_d[1]) ; \n",
01296 "for _i in $(_d[2-])\n",
01297 "{\n",
01298 "_s = $(_s)/$(_i) ;\n",
01299 "}\n",
01300 "return $(_s) ;\n",
01301 "}\n",
01302 "actions updated together piecemeal Archive\n",
01303 "{\n",
01304 "$(AR) $(<) $(>)\n",
01305 "}\n",
01306 "actions As\n",
01307 "{\n",
01308 "$(AS) $(ASFLAGS) -I$(HDRS) -o $(<) $(>)\n",
01309 "}\n",
01310 "actions C++\n",
01311 "{\n",
01312 "$(C++) -c $(C++FLAGS) $(OPTIM) -I$(HDRS) -o $(<) $(>)\n",
01313 "}\n",
01314 "actions Cc\n",
01315 "{\n",
01316 "$(CC) -c $(CCFLAGS) $(OPTIM) -I$(HDRS) -o $(<) $(>)\n",
01317 "}\n",
01318 "actions Chgrp\n",
01319 "{\n",
01320 "$(CHGRP) $(GROUP) $(<)\n",
01321 "}\n",
01322 "actions Chmod1\n",
01323 "{\n",
01324 "$(CHMOD) $(MODE) $(<)\n",
01325 "}\n",
01326 "actions Chown\n",
01327 "{\n",
01328 "$(CHOWN) $(OWNER) $(<)\n",
01329 "}\n",
01330 "actions piecemeal together existing Clean\n",
01331 "{\n",
01332 "$(RM) $(>)\n",
01333 "}\n",
01334 "actions File\n",
01335 "{\n",
01336 "$(CP) $(>) $(<)\n",
01337 "}\n",
01338 "actions GenFile1\n",
01339 "{\n",
01340 "$(>[1]) $(<) $(>[2-])\n",
01341 "}\n",
01342 "actions Fortran\n",
01343 "{\n",
01344 "$(FORTRAN) $(FORTRANFLAGS) -o $(<) $(>)\n",
01345 "}\n",
01346 "actions HardLink\n",
01347 "{\n",
01348 "$(RM) $(<) && $(LN) $(>) $(<)\n",
01349 "}\n",
01350 "actions Install\n",
01351 "{\n",
01352 "$(CP) $(>) $(<) \n",
01353 "}\n",
01354 "actions Lex\n",
01355 "{\n",
01356 "$(LEX) $(>)\n",
01357 "}\n",
01358 "actions LexMv\n",
01359 "{\n",
01360 "$(MV) lex.yy.c $(<)\n",
01361 "}\n",
01362 "actions Link bind NEEDLIBS\n",
01363 "{\n",
01364 "$(LINK) $(LINKFLAGS) -o $(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS) \n",
01365 "}\n",
01366 "actions MkDir1\n",
01367 "{\n",
01368 "$(MKDIR) $(<)\n",
01369 "}\n",
01370 "actions together Ranlib\n",
01371 "{\n",
01372 "$(RANLIB) $(<)\n",
01373 "}\n",
01374 "actions quietly updated piecemeal together RmTemps\n",
01375 "{\n",
01376 "$(RM) $(>)\n",
01377 "}\n",
01378 "actions Shell\n",
01379 "{\n",
01380 "$(AWK) '\n",
01381 "NR == 1 { print \"$(SHELLHEADER)\" }\n",
01382 "NR == 1 && /^[#:]/ { next }\n",
01383 "/^##/ { next }\n",
01384 "{ print }\n",
01385 "' < $(>) > $(<)\n",
01386 "}\n",
01387 "actions Yacc1\n",
01388 "{\n",
01389 "$(YACC) $(YACCFLAGS) $(>)\n",
01390 "}\n",
01391 "actions YaccMv\n",
01392 "{\n",
01393 "$(MV) $(YACCFILES).c $(<[1])\n",
01394 "$(MV) $(YACCFILES).h $(<[2])\n",
01395 "}\n",
01396 "if $(RELOCATE)\n",
01397 "{\n",
01398 "actions C++\n",
01399 "{\n",
01400 "$(C++) -c $(C++FLAGS) $(OPTIM) -I$(HDRS) $(>)\n",
01401 "}\n",
01402 "actions Cc\n",
01403 "{\n",
01404 "$(CC) -c $(CCFLAGS) $(OPTIM) -I$(HDRS) $(>)\n",
01405 "}\n",
01406 "actions ignore CcMv\n",
01407 "{\n",
01408 "[ $(<) != $(>:BS=$(SUFOBJ)) ] && $(MV) $(>:BS=$(SUFOBJ)) $(<)\n",
01409 "}\n",
01410 "}\n",
01411 "if $(NOARUPDATE)\n",
01412 "{\n",
01413 "actions Archive\n",
01414 "{\n",
01415 "$(AR) $(<) $(>)\n",
01416 "}\n",
01417 "}\n",
01418 "if $(NT)\n",
01419 "{\n",
01420 "if $(TOOLSET) = VISUALC || $(TOOLSET) = VC7 || $(TOOLSET) = INTELC\n",
01421 "{\n",
01422 "actions updated together piecemeal Archive\n",
01423 "{\n",
01424 "if exist $(<) set _$(<:B)_=$(<)\n",
01425 "$(AR) /out:$(<) %_$(<:B)_% $(>)\n",
01426 "}\n",
01427 "actions As\n",
01428 "{\n",
01429 "$(AS) /Ml /p /v /w2 $(>) $(<) ,nul,nul;\n",
01430 "}\n",
01431 "actions Cc\n",
01432 "{\n",
01433 "$(CC) /c $(CCFLAGS) $(OPTIM) /Fo$(<) /I$(HDRS) /I$(STDHDRS) $(>)\n",
01434 "}\n",
01435 "actions C++\n",
01436 "{\n",
01437 "$(C++) /c $(C++FLAGS) $(OPTIM) /Fo$(<) /I$(HDRS) /I$(STDHDRS) /Tp$(>)\n",
01438 "}\n",
01439 "actions Link bind NEEDLIBS\n",
01440 "{\n",
01441 "$(LINK) $(LINKFLAGS) /out:$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n",
01442 "}\n",
01443 "}\n",
01444 "else if $(TOOLSET) = VISUALC16\n",
01445 "{\n",
01446 "actions updated together piecemeal Archive\n",
01447 "{\n",
01448 "$(AR) $(<) -+$(>)\n",
01449 "}\n",
01450 "actions Cc\n",
01451 "{\n",
01452 "$(CC) /c $(CCFLAGS) $(OPTIM) /Fo$(<) /I$(HDRS) $(>)\n",
01453 "}\n",
01454 "actions C++\n",
01455 "{\n",
01456 "$(C++) /c $(C++FLAGS) $(OPTIM) /Fo$(<) /I$(HDRS) /Tp$(>)\n",
01457 "}\n",
01458 "actions Link bind NEEDLIBS\n",
01459 "{\n",
01460 "$(LINK) $(LINKFLAGS) /out:$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n",
01461 "}\n",
01462 "}\n",
01463 "else if $(TOOLSET) = BORLANDC\n",
01464 "{\n",
01465 "actions updated together piecemeal Archive\n",
01466 "{\n",
01467 "$(AR) $(<) -+$(>)\n",
01468 "}\n",
01469 "actions Link bind NEEDLIBS\n",
01470 "{\n",
01471 "$(LINK) -e$(<) $(LINKFLAGS) $(UNDEFS) -L$(LINKLIBS) $(NEEDLIBS) $(>)\n",
01472 "}\n",
01473 "actions C++\n",
01474 "{\n",
01475 "$(C++) -c $(C++FLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n",
01476 "}\n",
01477 "actions Cc\n",
01478 "{\n",
01479 "$(CC) -c $(CCFLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n",
01480 "}\n",
01481 "}\n",
01482 "else if $(TOOLSET) = MINGW\n",
01483 "{\n",
01484 "actions together piecemeal Archive\n",
01485 "{\n",
01486 "$(AR) $(<) $(>:T)\n",
01487 "}\n",
01488 "actions Cc\n",
01489 "{\n",
01490 "$(CC) -c $(CCFLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n",
01491 "}\n",
01492 "actions C++\n",
01493 "{\n",
01494 "$(C++) -c $(C++FLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n",
01495 "}\n",
01496 "}\n",
01497 "else if $(TOOLSET) = WATCOM\n",
01498 "{\n",
01499 "actions together piecemeal Archive\n",
01500 "{\n",
01501 "$(AR) $(<) +-$(>) \n",
01502 "}\n",
01503 "actions Cc\n",
01504 "{\n",
01505 "$(CC) $(CCFLAGS) $(OPTIM) /Fo=$(<) /I$(HDRS) $(>)\n",
01506 "}\n",
01507 "actions C++\n",
01508 "{\n",
01509 "$(C++) $(C++FLAGS) $(OPTIM) /Fo=$(<) /I$(HDRS) $(>)\n",
01510 "}\n",
01511 "actions Link bind NEEDLIBS\n",
01512 "{\n",
01513 "$(LINK) $(LINKFLAGS) /Fe=$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n",
01514 "}\n",
01515 "actions Shell\n",
01516 "{\n",
01517 "$(CP) $(>) $(<)\n",
01518 "}\n",
01519 "}\n",
01520 "else if $(TOOLSET) = LCC\n",
01521 "{\n",
01522 "actions together piecemeal Archive\n",
01523 "{\n",
01524 "$(AR) /out:$(<) $(>) \n",
01525 "}\n",
01526 "actions Cc\n",
01527 "{\n",
01528 "$(CC) $(CCFLAGS) $(OPTIM) -Fo$(<) -I$(HDRS) $(>)\n",
01529 "}\n",
01530 "actions Link bind NEEDLIBS\n",
01531 "{\n",
01532 "$(LINK) $(LINKFLAGS) -o $(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n",
01533 "}\n",
01534 "actions Shell\n",
01535 "{\n",
01536 "$(CP) $(>) $(<)\n",
01537 "}\n",
01538 "}\n",
01539 "}\n",
01540 "else if $(OS2)             \n",
01541 "{\n",
01542 "if $(TOOLSET) = WATCOM\n",
01543 "{\n",
01544 "actions together piecemeal Archive\n",
01545 "{\n",
01546 "$(AR) $(<) +-$(>) \n",
01547 "}\n",
01548 "actions Cc\n",
01549 "{\n",
01550 "$(CC) $(CCFLAGS) $(OPTIM) /Fo=$(<) /I$(HDRS) $(>)\n",
01551 "}\n",
01552 "actions C++\n",
01553 "{\n",
01554 "$(C++) $(C++FLAGS) $(OPTIM) /Fo=$(<) /I$(HDRS) $(>)\n",
01555 "}\n",
01556 "actions Link bind NEEDLIBS\n",
01557 "{\n",
01558 "$(LINK) $(LINKFLAGS) /Fe=$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n",
01559 "}\n",
01560 "actions Shell\n",
01561 "{\n",
01562 "$(CP) $(>) $(<)\n",
01563 "}\n",
01564 "}\n",
01565 "else if $(TOOLSET) = EMX\n",
01566 "{\n",
01567 "actions together piecemeal Archive\n",
01568 "{\n",
01569 "$(AR) $(<) $(>:T)\n",
01570 "}\n",
01571 "actions Cc\n",
01572 "{\n",
01573 "$(CC) -c $(CCFLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n",
01574 "}\n",
01575 "actions C++\n",
01576 "{\n",
01577 "$(C++) -c $(C++FLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n",
01578 "}\n",
01579 "}\n",
01580 "}\n",
01581 "else if $(VMS)\n",
01582 "{\n",
01583 "actions updated together piecemeal Archive \n",
01584 "{\n",
01585 "lib/replace $(<) $(>[1]) ,$(>[2-])\n",
01586 "}\n",
01587 "actions Cc\n",
01588 "{ \n",
01589 "$(CC)/obj=$(<) $(CCFLAGS) $(OPTIM) $(SLASHINC) $(>) \n",
01590 "}\n",
01591 "actions C++\n",
01592 "{ \n",
01593 "$(C++)/obj=$(<) $(C++FLAGS) $(OPTIM) $(SLASHINC) $(>) \n",
01594 "}\n",
01595 "actions piecemeal together existing Clean\n",
01596 "{\n",
01597 "$(RM) $(>[1]);* ,$(>[2-]);*\n",
01598 "}\n",
01599 "actions together quietly CreLib\n",
01600 "{\n",
01601 "if f$search(\"$(<)\") .eqs. \"\" then lib/create $(<)\n",
01602 "}\n",
01603 "actions GenFile1\n",
01604 "{\n",
01605 "mcr $(>[1]) $(<) $(>[2-])\n",
01606 "}\n",
01607 "actions Link bind NEEDLIBS\n",
01608 "{\n",
01609 "$(LINK)/exe=$(<) $(LINKFLAGS) $(>[1]) ,$(>[2-]) ,$(NEEDLIBS)/lib ,$(LINKLIBS)\n",
01610 "}\n",
01611 "actions quietly updated piecemeal together RmTemps\n",
01612 "{\n",
01613 "$(RM) $(>[1]);* ,$(>[2-]);*\n",
01614 "}\n",
01615 "actions Shell\n",
01616 "{\n",
01617 "$(CP) $(>) $(<)\n",
01618 "}\n",
01619 "}\n",
01620 "else if $(MAC)\n",
01621 "{\n",
01622 "actions together Archive \n",
01623 "{\n",
01624 "$(LINK) -library -o $(<) $(>)\n",
01625 "}\n",
01626 "actions Cc\n",
01627 "{\n",
01628 "set -e MWCincludes $(MACINC)\n",
01629 "$(CC) -o $(<) $(CCFLAGS) $(OPTIM) $(>) \n",
01630 "}\n",
01631 "actions C++\n",
01632 "{ \n",
01633 "set -e MWCincludes $(MACINC)\n",
01634 "$(CC) -o $(<) $(C++FLAGS) $(OPTIM) $(>) \n",
01635 "}\n",
01636 "actions Link bind NEEDLIBS\n",
01637 "{\n",
01638 "$(LINK) -o $(<) $(LINKFLAGS) $(>) $(NEEDLIBS) \"$(LINKLIBS)\"\n",
01639 "}\n",
01640 "}\n",
01641 "rule BULK { Bulk $(<) : $(>) ; }\n",
01642 "rule FILE { File $(<) : $(>) ; }\n",
01643 "rule HDRRULE { HdrRule $(<) : $(>) ; }\n",
01644 "rule INSTALL { Install $(<) : $(>) ; }\n",
01645 "rule LIBRARY { Library $(<) : $(>) ; }\n",
01646 "rule LIBS { LinkLibraries $(<) : $(>) ; }\n",
01647 "rule LINK { Link $(<) : $(>) ; }\n",
01648 "rule MAIN { Main $(<) : $(>) ; }\n",
01649 "rule SETUID { Setuid $(<) ; }\n",
01650 "rule SHELL { Shell $(<) : $(>) ; }\n",
01651 "rule UNDEFINES { Undefines $(<) : $(>) ; }\n",
01652 "rule INSTALLBIN { InstallBin $(BINDIR) : $(<) ; }\n",
01653 "rule INSTALLLIB { InstallLib $(LIBDIR) : $(<) ; }\n",
01654 "rule INSTALLMAN { InstallMan $(MANDIR) : $(<) ; }\n",
01655 "rule addDirName { $(<) += [ FDirName $(>) ] ; }\n",
01656 "rule makeDirName { $(<) = [ FDirName $(>) ] ; }\n",
01657 "rule makeGristedName { $(<) = [ FGristSourceFiles $(>) ] ; }\n",
01658 "rule makeRelPath { $(<[1]) = [ FRelPath $(<[2-]) : $(>) ] ; }\n",
01659 "rule makeSuffixed { $(<[1]) = [ FAppendSuffix $(>) : $(<[2]) ] ; }\n",
01660 "{\n",
01661 "if $(JAMFILE) { include $(JAMFILE) ; }\n",
01662 "}\n",
01663 "}\n",
01664 0 };

Generated on Mon Nov 8 17:07:36 2004 for MPT by  doxygen 1.3.9.1