$! "makeetex.com" % underscore removed 15-APR-1996 17:16:34 /PT $! % lowercased 7-OCT-1996 14:27:39 /PT $! % naming conventions changed -ditto- $! % directory structure changed for V2 10-MAR-1998 12:51:57 /PT $ on error then goto exit $ on control_y then goto exit $! $! Echoing is switched off $! $ old_verify = f$verify (0) $! $! Set compiling options depending on the system architecture $! $ $ define CHANGEFILE "etex_vms.ch" $ if f$getsyi("HW_MODEL") .ge. 1024 $ then $ arch_name = "Alpha" $ ARCH_PREF = "AXP_" $ PCFLAGS = "/noopt/check=all/float=g_float/list/debug" $ write sys$output "Creating e-TeX for AXP/VMS" $ else $ arch_name = "VAX" $ ARCH_PREF = "VAX_" $ PCFLAGS = "/noopt/check=all/g_float/list/debug" $ write sys$output "Creating e-TeX for VAX/VMS" $ endif $ $ if "''p1'" .nes. "" then goto 'p1' $ $ tex_1: $ webmerge: $ on warning then goto err_tex $ create etex_tmp.tmp $ set file /version=1 etex_tmp.tmp ! the scratch file used by "webmerge" $ write sys$output "Merging changefiles..." $ write sys$output "" $ tex makeetex ! generate merged change-file $ $ tangle: $ $! $! Call Tangle to generate eTEX.PAS $! $ on warning then goto err_tangle $ write sys$output "Tangling ""[e]tex.web""" $ write sys$output "" $ tangle [--.knuth]tex.web CHANGEFILE etex.pas etex.pool $ on error then goto exit $ $ compile: $ pascal: $ $! $! Compile source $! $ on warning then goto err_pascal $ write sys$output "Compiling ""etex.pas""" $ write sys$output "" $ pascal 'PCFLAGS' /obj=.'ARCH_PREF'obj etex $ $ cld: $ cli: $ set_command: $ $! $! (Re)compile the internal command table $! $ on warning then goto err_cld $ write sys$output "Compiling ""etex_cli.cld""" $ write sys$output "" $ set command/object=.'ARCH_PREF'obj etex_cli.cld $ $ link: $ $! $! Link $! $ on warning then goto err_link $ write sys$output "Linking ""etex""" $ write sys$output "" $ link /nodebug /exe=etex.'ARCH_PREF'exe etex.'ARCH_PREF'obj,etex_cli.'ARCH_PREF'obj $! $! Do keep the compiled command table: $! $! delete/noconfirm/nolog etex_cli.'ARCH_PREF'obj;* $ $ weave: $ $! Weave the listing only if successful $! $! Call Weave to generate eTEX.TeX $! $ on warning then goto err_Weave $ write sys$output "Weaving ""[e]tex.web""" $ write sys$output "" $ Weave [--.knuth]tex.web CHANGEFILE etex.tex $ $ dump: $ etex: $ symbols: $ on warning then goto err_etex $ $! Set up the necessary symbol(s) and logical name(s) $ $ write sys$output "Defining necessary symbols and logical names" $ write sys$output "" $ etex == "sys$disk:[]etex.''ARCH_PREF'exe" $ etex == "$" + f$parse(etex) $ here = f$parse("sys$disk:[]",,,"DEVICE") + - f$parse("sys$disk:[]",,,"DIRECTORY") $ define /job etex_inputs sys$disk:[],[-],[-.src],tex_inputs: $ define /job etex_font_metrics sys$disk:[],tex_font_metrics: $ define /job etex_formats sys$disk:[],'here',tex_formats: $ if "''p2'" .eqs. "ONLY" then exit $ $! Build the "etex" format $ write sys$output "Creating the (extended-mode) ""etex"" format" $ write sys$output "" $ etex /init /noformat *"etex.src \dump" $ $! Now try to "etex etex" $ write sys$output "e-TeXing ""etex.tex""" $ write sys$output "" $ eTeX "\hfuzz = 27 pt \input eTeX" $ $ exit: $ verify = old_verify $ exit $ $! error messages: $ $ $ err_tex: $ write sys$output "Error while generating merged changfile" $ goto exit $ $ err_pascal: $ write sys$output "Error compiling "etex.pas") $ goto exit $ $ err_link: $ write sys$output "Error during link phase" $ goto exit $ $ err_cld: $ write sys$output "Error compiling CLD tables" $ goto exit $ $err_tangle: $ write sys$output "Error tangling ""[e]tex.web""" $ goto exit $ $err_weave: $ write sys$output "Error tangling ""[e]tex.web""" $ goto exit $ $ err_etex: $ write sys$output "e-TeX ERROR: something horrible happened while" $ write sys$output "e-TeXxing eTeX :-(" $ goto exit